From e82a05d3e7f6c01d049a0fcdfa47ba271648eca6 Mon Sep 17 00:00:00 2001 From: Jordi Boggiano Date: Sun, 8 Apr 2012 20:27:37 +0200 Subject: [PATCH] [Process] Close pipes before calling proc_close to avoid deadlocks as advised on the proc_close php.net documentation --- src/Symfony/Component/Process/Process.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/Symfony/Component/Process/Process.php b/src/Symfony/Component/Process/Process.php index e1b6b08250..c7df0171a5 100644 --- a/src/Symfony/Component/Process/Process.php +++ b/src/Symfony/Component/Process/Process.php @@ -503,6 +503,12 @@ class Process $time += 1000; usleep(1000); } + + foreach ($this->pipes as $pipe) { + fclose($pipe); + } + $this->pipes = array(); + $exitcode = proc_close($this->process); $this->exitcode = -1 === $this->processInformation['exitcode'] ? $exitcode : $this->processInformation['exitcode']; }