Check temp folder usability before runtime to prevent weird errors.
parent
76350676b5
commit
28e9193e9e
|
@ -148,6 +148,15 @@ class Application extends BaseApplication
|
|||
Silencer::call('exec', 'sudo -K > /dev/null 2>&1');
|
||||
}
|
||||
|
||||
// Check system temp folder for usability as it can cause weird runtime issues otherwise
|
||||
Silencer::call(function() {
|
||||
$tempfile = sys_get_temp_dir() . '/tempchk.tmp';
|
||||
$usable = file_put_contents($tempfile, __FILE__) && (file_get_contents($tempfile) == __FILE__) && unlink($tempfile);
|
||||
if (!$usable || file_exists($tempfile)) {
|
||||
throw new \RuntimeException(sprintf('PHP temp directory "%s" does not exist or is not writable to Composer - check sys_temp_dir in your php.ini', sys_get_temp_dir()));
|
||||
}
|
||||
});
|
||||
|
||||
// switch working dir
|
||||
if ($newWorkDir = $this->getNewWorkingDir($input)) {
|
||||
$oldWorkingDir = getcwd();
|
||||
|
|
Loading…
Reference in New Issue