From cc854e6d23cea29d0cc66f25947443dcc80f4142 Mon Sep 17 00:00:00 2001 From: Pierre du Plessis Date: Sat, 3 Oct 2015 00:45:21 +0200 Subject: [PATCH 1/2] Throw exception if tempnam returns false --- src/Symfony/Component/Process/Pipes/WindowsPipes.php | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/Symfony/Component/Process/Pipes/WindowsPipes.php b/src/Symfony/Component/Process/Pipes/WindowsPipes.php index b20f3ec34d..1472f8c6c4 100644 --- a/src/Symfony/Component/Process/Pipes/WindowsPipes.php +++ b/src/Symfony/Component/Process/Pipes/WindowsPipes.php @@ -48,12 +48,11 @@ class WindowsPipes extends AbstractPipes // // @see https://bugs.php.net/bug.php?id=51800 $this->files = array( - Process::STDOUT => tempnam(sys_get_temp_dir(), 'sf_proc_stdout'), - Process::STDERR => tempnam(sys_get_temp_dir(), 'sf_proc_stderr'), + Process::STDOUT => tempnam(sys_get_temp_dir(), 'out_sf_proc'), + Process::STDERR => tempnam(sys_get_temp_dir(), 'err_sf_proc'), ); foreach ($this->files as $offset => $file) { - $this->fileHandles[$offset] = fopen($this->files[$offset], 'rb'); - if (false === $this->fileHandles[$offset]) { + if (false === $file || false === $this->fileHandles[$offset] = fopen($file, 'rb')) { throw new RuntimeException('A temporary file could not be opened to write the process output to, verify that your TEMP environment variable is writable'); } } From 1425b8adb043aad6c36cb0acb77cf9d8711880b8 Mon Sep 17 00:00:00 2001 From: Pierre du Plessis Date: Sun, 4 Oct 2015 17:06:43 +0200 Subject: [PATCH 2/2] Throw exception if tempnam returns false in ProcessPipes --- src/Symfony/Component/Process/ProcessPipes.php | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/Symfony/Component/Process/ProcessPipes.php b/src/Symfony/Component/Process/ProcessPipes.php index 647af3bf62..b2d09b85e5 100644 --- a/src/Symfony/Component/Process/ProcessPipes.php +++ b/src/Symfony/Component/Process/ProcessPipes.php @@ -44,12 +44,11 @@ class ProcessPipes // @see https://bugs.php.net/bug.php?id=51800 if ($this->useFiles) { $this->files = array( - Process::STDOUT => tempnam(sys_get_temp_dir(), 'sf_proc_stdout'), - Process::STDERR => tempnam(sys_get_temp_dir(), 'sf_proc_stderr'), + Process::STDOUT => tempnam(sys_get_temp_dir(), 'out_sf_proc'), + Process::STDERR => tempnam(sys_get_temp_dir(), 'err_sf_proc'), ); foreach ($this->files as $offset => $file) { - $this->fileHandles[$offset] = fopen($this->files[$offset], 'rb'); - if (false === $this->fileHandles[$offset]) { + if (false === $file || false === $this->fileHandles[$offset] = fopen($file, 'rb')) { throw new RuntimeException('A temporary file could not be opened to write the process output to, verify that your TEMP environment variable is writable'); } }