浏览代码

Detect EOF when reading input stream

[Console] Change back to fgets() in DialogHelper
lenar 14 年之前
父节点
当前提交
07298ac699
共有 1 个文件被更改,包括 3 次插入2 次删除
  1. 3 2
      src/Symfony/Component/Console/Helper/DialogHelper.php

+ 3 - 2
src/Symfony/Component/Console/Helper/DialogHelper.php

@@ -20,7 +20,7 @@ use Symfony\Component\Console\Output\OutputInterface;
  */
 class DialogHelper extends Helper
 {
-    private $inputStream;
+    private $inputStream = STDIN;
 
     /**
      * Asks a question to the user.
@@ -35,7 +35,8 @@ class DialogHelper extends Helper
     {
         $output->write($question);
 
-        if (false === $ret = stream_get_line(null === $this->inputStream ? STDIN : $this->inputStream, 4096, "\n")) {
+        $ret = fgets($this->inputStream, 4096);
+        if (false === $ret) {
             throw new \RuntimeException('Aborted');
         }
         $ret = trim($ret);