]> granicus.if.org Git - php/commitdiff
The behaviour for result == NULL || entry == NULL is undefined.
authorSascha Schumann <sas@php.net>
Wed, 24 May 2000 14:46:13 +0000 (14:46 +0000)
committerSascha Schumann <sas@php.net>
Wed, 24 May 2000 14:46:13 +0000 (14:46 +0000)
main/reentrancy.c
win32/readdir.c

index 4677d52ea205c83c0515988a4e2224a9c2e667d1..866cf4273ee3c3bcc6e2948de106a2b17eb8e697 100644 (file)
@@ -127,11 +127,10 @@ PHPAPI int php_readdir_r(DIR *dirp, struct dirent *entry,
        if (!ptr && errno != 0)
                ret = errno;
 
-       if (entry && ptr)
+       if (ptr)
                memcpy(entry, ptr, sizeof(*ptr));
 
-       if (result) 
-               *result = ptr;
+       *result = ptr;
 
        local_unlock(READDIR_R);
 
index a9cfa3a5133a33369edbff92727c336c6fc7a387..ed799a6747d00cffa145ebeda45e5297b5c61ede 100644 (file)
@@ -74,16 +74,14 @@ struct dirent *readdir(DIR *dp)
 int readdir_r(DIR *dp, struct dirent *entry, struct dirent **result)
 {
        if (!dp || dp->finished) {
-               if (result) 
-                       *result = NULL;
+               *result = NULL;
                return 0;
        }
 
        if (dp->offset != 0) {
                if (_findnext(dp->handle, &(dp->fileinfo)) < 0) {
                        dp->finished = 1;
-                       if (result) 
-                               *result = NULL;
+                       *result = NULL;
                        return 0;
                }
        }
@@ -94,11 +92,9 @@ int readdir_r(DIR *dp, struct dirent *entry, struct dirent **result)
        dp->dent.d_reclen = strlen(dp->dent.d_name);
        dp->dent.d_off = dp->offset;
 
-       if (entry)
-               memcpy(entry, &dp->dent, sizeof(*entry));
+       memcpy(entry, &dp->dent, sizeof(*entry));
 
-       if (result)
-               *result = &dp->dent;
+       *result = &dp->dent;
 
        return 0;
 }