diff options
-rw-r--r-- | NEWS | 4 | ||||
-rw-r--r-- | main/streams/plain_wrapper.c | 2 |
2 files changed, 4 insertions, 2 deletions
@@ -38,7 +38,9 @@ PHP NEWS - Added pg_field_table() function. (Edin) - Added implementation of curl_multi_info_read(). (Brian) - Added RFC2397 (data: stream) support. (Marcus) -- Fixed Bug #37457 (Crash when an exception is thrown in accept() method of +- Fixed bug #37395 (recursive mkdir() fails to create nonexistent directories + in root dir). (Tony) +- Fixed bug #37457 (Crash when an exception is thrown in accept() method of FilterIterator). (Marcus) - Fixed bug #37416 (iterator_to_array() hides exceptions thrown in rewind() method). (Tony) diff --git a/main/streams/plain_wrapper.c b/main/streams/plain_wrapper.c index ac5ad825db..2180318fcf 100644 --- a/main/streams/plain_wrapper.c +++ b/main/streams/plain_wrapper.c @@ -1100,7 +1100,7 @@ static int php_plain_files_mkdir(php_stream_wrapper *wrapper, char *dir, int mod } else { /* find a top level directory we need to create */ - while ( (p = strrchr(buf + offset, DEFAULT_SLASH)) || (p = strrchr(buf, DEFAULT_SLASH)) ) { + while ( (p = strrchr(buf + offset, DEFAULT_SLASH)) || ( offset !=1 && (p = strrchr(buf, DEFAULT_SLASH))) ) { *p = '\0'; if (VCWD_STAT(buf, &sb) == 0) { *p = DEFAULT_SLASH; |