Browse Source

fix #37395 (recursive mkdir() fails to create nonexistent directories in root dir)

PECL_OPENSSL
Antony Dovgal 20 years ago
parent
commit
3a830a30f4
  1. 4
      NEWS
  2. 2
      main/streams/plain_wrapper.c

4
NEWS

@ -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)

2
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;

Loading…
Cancel
Save