[__GO32__]: Include <pc.h>.
[deliverable/binutils-gdb.git] / readline / shell.c
index 553f3c1cc902b2162872d8f393468cee6b376fff..f0ddc897fe42cf0438dcec42ebf18daf9135e4f1 100644 (file)
 #  include <config.h>
 #endif
 
+#include <sys/types.h>
+#include <stdio.h>
+
 #if defined (HAVE_UNISTD_H)
-#  ifdef _MINIX
-#    include <sys/types.h>
-#  endif
 #  include <unistd.h>
 #endif /* HAVE_UNISTD_H */
 
 #  include <strings.h>
 #endif /* !HAVE_STRING_H */
 
-extern char *xmalloc (), *xrealloc ();
+#include <pwd.h>
 
-#if !defined (SHELL)
+#if !defined (HAVE_GETPW_DECLS)
+extern struct passwd *getpwuid ();
+#endif /* !HAVE_GETPW_DECLS */
 
-#ifdef savestring
-#undef savestring
-#endif
+extern char *xmalloc ();
 
-/* Backwards compatibility, now that savestring has been removed from
-   all `public' readline header files. */
-char *
-savestring (s)
-     char *s;
-{
-  return ((char *)strcpy (xmalloc (1 + (int)strlen (s)), (s)));
-}
+/* All of these functions are resolved from bash if we are linking readline
+   as part of bash. */
 
 /* Does shell-like quoting using single quotes. */
 char *
@@ -126,13 +120,15 @@ get_env_value (varname)
   return ((char *)getenv (varname));
 }
 
-#else /* SHELL */
-extern char *get_string_value ();
-
 char *
-get_env_value (varname)
-     char *varname;
+get_home_dir ()
 {
-  return get_string_value (varname);
-}      
-#endif /* SHELL */
+  char *home_dir;
+  struct passwd *entry;
+
+  home_dir = (char *)NULL;
+  entry = getpwuid (getuid ());
+  if (entry)
+    home_dir = entry->pw_dir;
+  return (home_dir);
+}
This page took 0.023491 seconds and 4 git commands to generate.