Guard against bug in Solaris' bsearch(), per Michael Wildpaner.

This commit is contained in:
Tom Lane 2003-12-05 15:50:39 +00:00
parent 1a1485115e
commit 88ae594bde

View File

@ -10,7 +10,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/libpq/hba.c,v 1.116 2003/10/25 03:48:46 momjian Exp $ * $Header: /cvsroot/pgsql/src/backend/libpq/hba.c,v 1.116.2.1 2003/12/05 15:50:39 tgl Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
@ -381,6 +381,10 @@ user_group_bsearch_cmp(const void *user, const void *list)
static List ** static List **
get_group_line(const char *group) get_group_line(const char *group)
{ {
/* On some versions of Solaris, bsearch of zero items dumps core */
if (group_length == 0)
return NULL;
return (List **) bsearch((void *) group, return (List **) bsearch((void *) group,
(void *) group_sorted, (void *) group_sorted,
group_length, group_length,
@ -395,6 +399,10 @@ get_group_line(const char *group)
List ** List **
get_user_line(const char *user) get_user_line(const char *user)
{ {
/* On some versions of Solaris, bsearch of zero items dumps core */
if (user_length == 0)
return NULL;
return (List **) bsearch((void *) user, return (List **) bsearch((void *) user,
(void *) user_sorted, (void *) user_sorted,
user_length, user_length,