Преглед на файлове

Report proper error if a write fails instead of saying the download failed

Jordi Boggiano преди 13 години
родител
ревизия
5c5f87008f
променени са 1 файла, в които са добавени 7 реда и са изтрити 4 реда
  1. 7 4
      src/Composer/Util/RemoteFilesystem.php

+ 7 - 4
src/Composer/Util/RemoteFilesystem.php

@@ -130,9 +130,16 @@ class RemoteFilesystem
             }
         }
 
+        if ($this->progress) {
+            $this->io->overwrite("    Downloading: <comment>100%</comment>");
+        }
+
         // handle copy command if download was successful
         if (false !== $result && null !== $fileName) {
             $result = (Boolean) @file_put_contents($fileName, $result);
+            if (false === $result) {
+                throw new TransportException('The "'.$fileUrl.'" file could not be written to '.$fileName);
+            }
         }
 
         // avoid overriding if content was loaded by a sub-call to get()
@@ -140,10 +147,6 @@ class RemoteFilesystem
             $this->result = $result;
         }
 
-        if ($this->progress) {
-            $this->io->overwrite("    Downloading: <comment>100%</comment>");
-        }
-
         if (false === $this->result) {
             throw new TransportException('The "'.$fileUrl.'" file could not be downloaded');
         }