1010 *
1111 *
1212 * IDENTIFICATION
13- * $PostgreSQL: pgsql/src/backend/libpq/hba.c,v 1.117 2003/11/29 19:51:49 pgsql Exp $
13+ * $PostgreSQL: pgsql/src/backend/libpq/hba.c,v 1.118 2003/12/05 15:50:31 tgl Exp $
1414 *
1515 *-------------------------------------------------------------------------
1616 */
@@ -381,6 +381,10 @@ user_group_bsearch_cmp(const void *user, const void *list)
381381static List * *
382382get_group_line (const char * group )
383383{
384+ /* On some versions of Solaris, bsearch of zero items dumps core */
385+ if (group_length == 0 )
386+ return NULL ;
387+
384388return (List * * )bsearch ((void * )group ,
385389 (void * )group_sorted ,
386390group_length ,
@@ -392,9 +396,13 @@ get_group_line(const char *group)
392396/*
393397 * Lookup a user name in the pg_shadow file
394398 */
395- List * *
399+ List * *
396400get_user_line (const char * user )
397401{
402+ /* On some versions of Solaris, bsearch of zero items dumps core */
403+ if (user_length == 0 )
404+ return NULL ;
405+
398406return (List * * )bsearch ((void * )user ,
399407 (void * )user_sorted ,
400408user_length ,