Revert "stream: start old-mode read in a next tick"
authorFedor Indutny <fedor@indutny.com>
Mon, 30 Jun 2014 09:06:35 +0000 (13:06 +0400)
committerFedor Indutny <fedor@indutny.com>
Mon, 30 Jun 2014 09:06:35 +0000 (13:06 +0400)
This reverts commit 2efe4ab7616669448f873b0417e9aa81221324e2.

lib/_stream_readable.js
lib/http.js
test/simple/test-stream-readable-data-sync-race.js [deleted file]
test/simple/test-stream2-compatibility.js

index e447b7c..1d486cf 100755 (executable)
@@ -87,9 +87,6 @@ function ReadableState(options, stream) {
   // if true, a maybeReadMore has been scheduled
   this.readingMore = false;
 
-  // if true, stream is in old mode
-  this.oldMode = false;
-
   this.decoder = null;
   this.encoding = null;
   if (options.encoding) {
@@ -769,15 +766,8 @@ function emitDataEvents(stream, startPaused) {
     this.emit('resume');
   };
 
-  // Start reading in next tick to allow caller to set event listeners on
-  // the stream object (like 'error')
-  process.nextTick(function() {
-    // now make it start, just in case it hadn't already.
-    stream.emit('readable');
-  });
-
-  // Let others know about our mode
-  state.oldMode = true;
+  // now make it start, just in case it hadn't already.
+  stream.emit('readable');
 }
 
 // wrap an old-style stream as the async data source.
index 5f84c4d..0623668 100644 (file)
@@ -2078,7 +2078,7 @@ function connectionListener(socket) {
       // if the user never called req.read(), and didn't pipe() or
       // .resume() or .on('data'), then we call req._dump() so that the
       // bytes will be pulled off the wire.
-      if (!req._consuming && !req._readableState.oldMode)
+      if (!req._consuming)
         req._dump();
 
       res.detachSocket(socket);
diff --git a/test/simple/test-stream-readable-data-sync-race.js b/test/simple/test-stream-readable-data-sync-race.js
deleted file mode 100644 (file)
index 5bbfcc8..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-var common = require('../common');
-var assert = require('assert');
-
-var Readable = require('stream').Readable;
-
-var r = new Readable();
-var errors = 0;
-
-// Setting `data` listener should not trigger `_read()` calls before we will
-// set the `error` listener below
-r.on('data', function() {
-});
-
-r.on('error', function() {
-  errors++;
-});
-
-process.on('exit', function() {
-  assert.equal(errors, 1);
-});
index fa58b03..2b98c1f 100644 (file)
@@ -47,6 +47,4 @@ TestReader.prototype._read = function(n) {
 };
 
 var reader = new TestReader();
-process.nextTick(function() {
-  assert.equal(ondataCalled, 1);
-});
+assert.equal(ondataCalled, 1);