summary refs log tree commit diff
path: root/sysdeps/posix/getcwd.c
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1996-06-23 01:31:00 +0000
committerRoland McGrath <roland@gnu.org>1996-06-23 01:31:00 +0000
commit7f8116797fdb967571c00ec1d5b19d9d06813445 (patch)
tree495028d64d6496045a2da2af2176ef29d2e9d1e6 /sysdeps/posix/getcwd.c
parent072ebcefb24864ff922bc83f8aa270b799c73ba6 (diff)
downloadglibc-7f8116797fdb967571c00ec1d5b19d9d06813445.tar.gz
glibc-7f8116797fdb967571c00ec1d5b19d9d06813445.tar.xz
glibc-7f8116797fdb967571c00ec1d5b19d9d06813445.zip
Sat Jun 22 21:29:52 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu> glibc-1.92 cvs/libc-960624 cvs/libc-960623 cvs/libc-1-92
	* Version 1.92 test release.

Sat Jun 22 23:30:07 1996  David Mosberger-Tang  <davidm@azstarnet.com>

	* sysdeps/unix/sysv/linux/syscalls.list (ksyslog_ctl): Rename
	to klogctl to match prototype in sys/klog.h.

	* sysdeps/posix/libc_fatal.c: Add include of <string.h>.
	* sysdeps/unix/sysv/linux/gethostid.c: Ditto.

	* sysdeps/posix/getcwd.c (__canonicalize_directory_name_internal):
	Remove.  Code is now part of __getcwd again.  The old function
	never really worked for anything but THISDIR==".".

	* sysdeps/alpha/Makefile (CFLAGS-rtld.c): Add -mbuild-constants
	only when building ELF version of library.

	* libio/libioP.h (_IO_vscanf): Add prototype.

	* posix/unistd.h (syscall): Change sysno arg and return value
	to int long.

	* version.h (VERSION): Updated to 1.92.
Diffstat (limited to 'sysdeps/posix/getcwd.c')
-rw-r--r--sysdeps/posix/getcwd.c29
1 files changed, 7 insertions, 22 deletions
diff --git a/sysdeps/posix/getcwd.c b/sysdeps/posix/getcwd.c
index 05f626f869..af858a2643 100644
--- a/sysdeps/posix/getcwd.c
+++ b/sysdeps/posix/getcwd.c
@@ -180,15 +180,18 @@ extern char *alloca ();
 #define	__lstat	stat
 #endif
 
-/* Get the canonical absolute name of the named directory, and put it in SIZE
+#ifndef _LIBC
+#define __getcwd getcwd
+#endif
+
+/* Get the pathname of the current working directory, and put it in SIZE
    bytes of BUF.  Returns NULL if the directory couldn't be determined or
    SIZE was too small.  If successful, returns BUF.  In GNU, if BUF is
    NULL, an array is allocated with `malloc'; the array is SIZE bytes long,
    unless SIZE <= 0, in which case it is as big as necessary.  */
 
 char *
-__canonicalize_directory_name_internal (thisdir, buf, size)
-     const char *thisdir;
+__getcwd (buf, size)
      char *buf;
      size_t size;
 {
@@ -227,7 +230,7 @@ __canonicalize_directory_name_internal (thisdir, buf, size)
   pathp = path + size;
   *--pathp = '\0';
 
-  if (__lstat (thisdir, &st) < 0)
+  if (__lstat (".", &st) < 0)
     return NULL;
   thisdev = st.st_dev;
   thisino = st.st_ino;
@@ -366,24 +369,6 @@ __canonicalize_directory_name_internal (thisdir, buf, size)
     free ((__ptr_t) dotlist);
   return NULL;
 }
-
-/* Get the pathname of the current working directory, and put it in SIZE
-   bytes of BUF.  Returns NULL if the directory couldn't be determined or
-   SIZE was too small.  If successful, returns BUF.  In GNU, if BUF is
-   NULL, an array is allocated with `malloc'; the array is SIZE bytes long,
-   unless SIZE <= 0, in which case it is as big as necessary.  */
-
-#ifndef _LIBC
-#define __getcwd getcwd
-#endif
-
-char *
-__getcwd (buf, size)
-     char *buf;
-     size_t size;
-{
-  return __canonicalize_directory_name_internal (".", buf, size);
-}
 
 #ifdef _LIBC
 weak_alias (__getcwd, getcwd)