diff --git a/src/Composer/Script/EventDispatcher.php b/src/Composer/Script/EventDispatcher.php index 2b1a05767..00aebf883 100644 --- a/src/Composer/Script/EventDispatcher.php +++ b/src/Composer/Script/EventDispatcher.php @@ -103,16 +103,9 @@ class EventDispatcher throw $e; } } else { - $callback = function ($type, $buffer) use ($event, $callable) { - $io = $event->getIO(); - if ('err' === $type) { - $message = 'Script %s handling the %s event returned an error: %s'; - $io->write(sprintf(''.$message.'', $callable, $event->getName(), $buffer)); - } else { - $io->write($buffer, false); - } - }; - $this->process->execute($callable, $callback); + if (0 !== $this->process->execute($callable, $callback)) { + $event->getIO()->write(sprintf('Script %s handling the %s event returned with an error: %s', $callable, $event->getName(), $this->process->getErrorOutput())); + } } } }