Explorar o código

Warn if cache isnt writable as well

Jordi Boggiano %!s(int64=10) %!d(string=hai) anos
pai
achega
3c5f3e6dc7
Modificáronse 1 ficheiros con 6 adicións e 5 borrados
  1. 6 5
      src/Composer/Cache.php

+ 6 - 5
src/Composer/Cache.php

@@ -43,11 +43,12 @@ class Cache
         $this->whitelist = $whitelist;
         $this->whitelist = $whitelist;
         $this->filesystem = $filesystem ?: new Filesystem();
         $this->filesystem = $filesystem ?: new Filesystem();
 
 
-        if (!is_dir($this->root)) {
-            if (!@mkdir($this->root, 0777, true)) {
-                $this->io->writeError('<warning>Cannot create cache directory ' . $this->root . ', proceeding without cache</warning>');
-                $this->enabled = false;
-            }
+        if (
+            (!is_dir($this->root) && !@mkdir($this->root, 0777, true))
+            || !is_writable($this->root)
+        ) {
+            $this->io->writeError('<warning>Cannot create cache directory ' . $this->root . ', or directory is not writable. Proceeding without cache</warning>');
+            $this->enabled = false;
         }
         }
     }
     }