/* Written by David MacKenzie <djm@gnu.ai.mit.edu> */
#ifdef HAVE_CONFIG_H
-#if defined (CONFIG_BROKETS)
-/* We use <config.h> instead of "config.h" so that a compilation
- using -I. -I$srcdir will use ./config.h rather than $srcdir/config.h
- (which it would do because it found this file in $srcdir). */
#include <config.h>
-#else
-#include "config.h"
-#endif
#endif
#ifndef SHELLS_FILE
char *realloc ();
#endif
+char *xstrdup ();
+
static int readname ();
/* List of shells to use if the shells file is missing. */
static int line_size = 0;
\f
/* Return an entry from the shells file, ignoring comment lines.
+ If the file doesn't exist, use the list in DEFAULT_SHELLS (above).
+ In any case, the returned string is in memory allocated through malloc.
Return NULL if there are no more entries. */
char *
{
if (default_shells[default_index])
/* Not at the end of the list yet. */
- return default_shells[default_index++];
+ return xstrdup (default_shells[default_index++]);
return NULL;
}
{
/* No shells file. Use the default list. */
default_index = 1;
- return default_shells[0];
+ return xstrdup (default_shells[0]);
}
}