Throw exception if tempnam returns false

This commit is contained in:
Pierre du Plessis 2015-10-03 00:45:21 +02:00
parent fdce6ac104
commit cc854e6d23

View File

@ -48,12 +48,11 @@ class WindowsPipes extends AbstractPipes
// //
// @see https://bugs.php.net/bug.php?id=51800 // @see https://bugs.php.net/bug.php?id=51800
$this->files = array( $this->files = array(
Process::STDOUT => tempnam(sys_get_temp_dir(), 'sf_proc_stdout'), Process::STDOUT => tempnam(sys_get_temp_dir(), 'out_sf_proc'),
Process::STDERR => tempnam(sys_get_temp_dir(), 'sf_proc_stderr'), Process::STDERR => tempnam(sys_get_temp_dir(), 'err_sf_proc'),
); );
foreach ($this->files as $offset => $file) { foreach ($this->files as $offset => $file) {
$this->fileHandles[$offset] = fopen($this->files[$offset], 'rb'); if (false === $file || false === $this->fileHandles[$offset] = fopen($file, 'rb')) {
if (false === $this->fileHandles[$offset]) {
throw new RuntimeException('A temporary file could not be opened to write the process output to, verify that your TEMP environment variable is writable'); throw new RuntimeException('A temporary file could not be opened to write the process output to, verify that your TEMP environment variable is writable');
} }
} }