src: Revert "nix stdin _readableState.reading"
authorRoman Reiss <me@silverwind.io>
Mon, 26 Oct 2015 12:30:54 +0000 (13:30 +0100)
committerJames M Snell <jasnell@gmail.com>
Wed, 23 Dec 2015 16:38:33 +0000 (08:38 -0800)
This reverts 8cee8f5 which was causing stdin to behave strangely on
Windows 8 and 10. The suspected explanation for the issue is that there
might be a race condition occuring when stdin._readableState.reading is
set indirectly through `push('')`.

PR-URL: https://github.com/nodejs/node/pull/3490
Fixes: https://github.com/nodejs/node/issues/2996
Fixes: https://github.com/nodejs/node/issues/2504
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Rod Vagg <rod@vagg.org>
src/node.js

index 1aa489b..5a4496e 100644 (file)
       // not-reading state.
       if (stdin._handle && stdin._handle.readStop) {
         stdin._handle.reading = false;
-        stdin.push('');
+        stdin._readableState.reading = false;
         stdin._handle.readStop();
       }
 
       stdin.on('pause', function() {
         if (!stdin._handle)
           return;
-        stdin.push('');
+        stdin._readableState.reading = false;
         stdin._handle.reading = false;
         stdin._handle.readStop();
       });