about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/posix/getcwd.c6
-rw-r--r--sysdeps/unix/sysv/linux/getcwd.c6
3 files changed, 8 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog
index 6956296a12..da9b1b1f41 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,8 +1,7 @@
 1999-08-20  Ulrich Drepper  <drepper@cygnus.com>
 
-	* sysdeps/unix/sysv/linux/getcwd.c: Allocate buffer large enough
-	not only if size == 0, but also for size < 0.
-	* sysdeps/posix/getcwd.c: Likewise.  [PR libc/1269]
+	* sysdeps/posix/getcwd.c: Correct comment saying < 0 is ok for size
+	type.  [PR libc/1269]
 
 	* posix/execvp.c (execvp): Allocate array name of correct size.
 	Optimize inner loop.  Use execve directly, not execv.
diff --git a/sysdeps/posix/getcwd.c b/sysdeps/posix/getcwd.c
index e79598b045..617d340e4f 100644
--- a/sysdeps/posix/getcwd.c
+++ b/sysdeps/posix/getcwd.c
@@ -204,7 +204,7 @@ extern char *alloca ();
    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.  */
+   unless SIZE == 0, in which case it is as big as necessary.  */
 
 GETCWD_RETURN_TYPE
 __getcwd (buf, size)
@@ -226,7 +226,7 @@ __getcwd (buf, size)
   int prev_errno = errno;
   size_t allocated = size;
 
-  if (size <= 0)
+  if (size == 0)
     {
       if (buf != NULL)
 	{
@@ -363,7 +363,7 @@ __getcwd (buf, size)
 
 	  if ((size_t) (pathp - path) <= namlen)
 	    {
-	      if (size > 0)
+	      if (size != 0)
 		{
 		  (void) __closedir (dirstream);
 		  __set_errno (ERANGE);
diff --git a/sysdeps/unix/sysv/linux/getcwd.c b/sysdeps/unix/sysv/linux/getcwd.c
index 223cd310b8..cc7b987f9b 100644
--- a/sysdeps/unix/sysv/linux/getcwd.c
+++ b/sysdeps/unix/sysv/linux/getcwd.c
@@ -72,7 +72,7 @@ __getcwd (char *buf, size_t size)
   if (no_syscall_getcwd && !have_new_dcache)
     return generic_getcwd (buf, size);
 
-  if (size <= 0)
+  if (size == 0)
     {
       if (buf != NULL)
 	{
@@ -179,7 +179,7 @@ __getcwd (char *buf, size_t size)
   __set_errno (save_errno);
 
   /* Don't put restrictions on the length of the path unless the user does.  */
-  if (size <= 0)
+  if (size == 0)
     {
       free (path);
       path = NULL;
@@ -187,7 +187,7 @@ __getcwd (char *buf, size_t size)
 
   result = generic_getcwd (path, size);
 
-  if (result == NULL && buf == NULL && size > 0)
+  if (result == NULL && buf == NULL && size != 0)
     free (path);
 
   return result;