summaryrefslogtreecommitdiff
path: root/main
diff options
context:
space:
mode:
authorfoobar <sniper@php.net>2000-11-28 09:13:22 +0000
committerfoobar <sniper@php.net>2000-11-28 09:13:22 +0000
commite5a997ff59e5b769bf3125fce26a545a5a3a2c50 (patch)
treedf3b54a358511596767d91624d12b2ef52daa858 /main
parent5c16c9fa1a04136d3d314cbbd030a211a01af73e (diff)
downloadphp-git-e5a997ff59e5b769bf3125fce26a545a5a3a2c50.tar.gz
@- Fixed a bug which made readdir() unusable in some systems. (Jani)
# Bug report: #7390
Diffstat (limited to 'main')
-rw-r--r--main/reentrancy.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/main/reentrancy.c b/main/reentrancy.c
index 79e4f13da3..436c850d6d 100644
--- a/main/reentrancy.c
+++ b/main/reentrancy.c
@@ -104,15 +104,15 @@ PHPAPI int php_readdir_r(DIR *dirp, struct dirent *entry,
errno = 0;
ret = readdir_r(dirp, entry);
-
- if (ret == 0)
- *result = entry;
- else if (errno == 0) {
+
+ if (!ret || errno != 0) {
*result = NULL;
- ret = 0;
+ } else {
+ *result = entry;
}
- return ret;
+ return errno;
+
#else
struct dirent *ptr;
int ret = 0;