]> granicus.if.org Git - php/commitdiff
Return false when the directory can not be created in mkDir()
authorTomas V.V.Cox <cox@php.net>
Wed, 23 Jan 2002 18:53:08 +0000 (18:53 +0000)
committerTomas V.V.Cox <cox@php.net>
Wed, 23 Jan 2002 18:53:08 +0000 (18:53 +0000)
pear/System.php

index 939692b8a7df6aa288387145e260a35000b60507..fd90901295fee5664624210f096d7598b2bece0c 100644 (file)
@@ -197,6 +197,7 @@ class System extends PEAR
                 $mode = $opt[1];
             }
         }
+        $ret = true;
         if (isset($create_parents)) {
             foreach($opts[1] as $dir) {
                 $dirstack = array();
@@ -206,18 +207,18 @@ class System extends PEAR
                 }
                 while ($newdir = array_shift($dirstack)) {
                     if (!mkdir($newdir, $mode)) {
-                        break; // XXX error
+                        $ret = false;
                     }
                 }
             }
         } else {
             foreach($opts[1] as $dir) {
-                if (!mkdir($dir, $mode)) {
-                    continue; // XXX error
+                if (!@is_dir($dir) && !mkdir($dir, $mode)) {
+                    $ret = false;
                 }
             }
         }
-        return true;
+        return $ret;
     }
 
     /**