diff options
author | Emmanuel Odeke <emmanuel.odeke@cmgcanada.ca> | 2014-10-22 16:57:51 -0600 |
---|---|---|
committer | Trevor Norris <trev.norris@gmail.com> | 2014-10-25 00:36:04 -0700 |
commit | 523929c9272a53c9429616564a45f2af59670e47 (patch) | |
tree | b45f01a64f17fe034d0f7f1d24511a6291878653 | |
parent | ea69dd7584a9af9a83fd4b5f4eb0a3f297a46004 (diff) | |
download | node-523929c9272a53c9429616564a45f2af59670e47.tar.gz |
repl: Private Buffer object in lib/* files
Fixes usage of global object 'Buffer' in lib/* files by ensuring that
each file does an explicit require('buffer').Buffer. Previously, when
running a repl, due to usage of global 'Buffer', any redefinition of
Buffer would cause a crash eg var Buffer = {}.
Fixes: https://github.com/joyent/node/issues/8588
PR-URL: https://github.com/joyent/node/pull/8603
Reviewed-by: Trevor Norris <trev.norris@gmail.com>
-rwxr-xr-x | lib/_stream_readable.js | 1 | ||||
-rw-r--r-- | lib/_stream_writable.js | 1 | ||||
-rw-r--r-- | lib/assert.js | 3 | ||||
-rw-r--r-- | lib/dgram.js | 1 | ||||
-rw-r--r-- | lib/fs.js | 1 | ||||
-rw-r--r-- | lib/http.js | 1 | ||||
-rw-r--r-- | lib/net.js | 1 | ||||
-rw-r--r-- | lib/readline.js | 1 | ||||
-rw-r--r-- | lib/tls.js | 1 | ||||
-rw-r--r-- | lib/zlib.js | 1 |
10 files changed, 11 insertions, 1 deletions
diff --git a/lib/_stream_readable.js b/lib/_stream_readable.js index 1b29676e0..52fe3136a 100755 --- a/lib/_stream_readable.js +++ b/lib/_stream_readable.js @@ -24,6 +24,7 @@ Readable.ReadableState = ReadableState; var EE = require('events').EventEmitter; var Stream = require('stream'); +var Buffer = require('buffer').Buffer; var util = require('util'); var StringDecoder; diff --git a/lib/_stream_writable.js b/lib/_stream_writable.js index f02eb4edc..f5efe723b 100644 --- a/lib/_stream_writable.js +++ b/lib/_stream_writable.js @@ -28,6 +28,7 @@ Writable.WritableState = WritableState; var util = require('util'); var Stream = require('stream'); +var Buffer = require('buffer').Buffer; util.inherits(Writable, Stream); diff --git a/lib/assert.js b/lib/assert.js index c9b71d449..5bd30ea95 100644 --- a/lib/assert.js +++ b/lib/assert.js @@ -24,6 +24,7 @@ // UTILITY var util = require('util'); +var b = require('buffer'); var pSlice = Array.prototype.slice; // 1. The assert module provides functions that throw @@ -144,7 +145,7 @@ function _deepEqual(actual, expected) { if (actual === expected) { return true; - } else if (Buffer.isBuffer(actual) && Buffer.isBuffer(expected)) { + } else if (b.Buffer.isBuffer(actual) && b.Buffer.isBuffer(expected)) { if (actual.length != expected.length) return false; for (var i = 0; i < actual.length; i++) { diff --git a/lib/dgram.js b/lib/dgram.js index e724a619d..ea1421453 100644 --- a/lib/dgram.js +++ b/lib/dgram.js @@ -22,6 +22,7 @@ var assert = require('assert'); var util = require('util'); var events = require('events'); +var Buffer = require('buffer').Buffer; var UDP = process.binding('udp_wrap').UDP; @@ -31,6 +31,7 @@ var pathModule = require('path'); var binding = process.binding('fs'); var constants = process.binding('constants'); var fs = exports; +var Buffer = require('buffer').Buffer; var Stream = require('stream').Stream; var EventEmitter = require('events').EventEmitter; diff --git a/lib/http.js b/lib/http.js index f87df173b..6f640d1af 100644 --- a/lib/http.js +++ b/lib/http.js @@ -24,6 +24,7 @@ var net = require('net'); var Stream = require('stream'); var timers = require('timers'); var url = require('url'); +var Buffer = require('buffer').Buffer; var EventEmitter = require('events').EventEmitter; var FreeList = require('freelist').FreeList; var HTTPParser = process.binding('http_parser').HTTPParser; diff --git a/lib/net.js b/lib/net.js index bc336934b..402e0909b 100644 --- a/lib/net.js +++ b/lib/net.js @@ -25,6 +25,7 @@ var timers = require('timers'); var util = require('util'); var assert = require('assert'); var cares = process.binding('cares_wrap'); +var Buffer = require('buffer').Buffer; var cluster; function noop() {} diff --git a/lib/readline.js b/lib/readline.js index c52f3e88b..d64661622 100644 --- a/lib/readline.js +++ b/lib/readline.js @@ -29,6 +29,7 @@ var kHistorySize = 30; var kBufSize = 10 * 1024; var util = require('util'); +var Buffer = require('buffer').Buffer; var inherits = require('util').inherits; var EventEmitter = require('events').EventEmitter; diff --git a/lib/tls.js b/lib/tls.js index 77a708921..e3b908322 100644 --- a/lib/tls.js +++ b/lib/tls.js @@ -26,6 +26,7 @@ var url = require('url'); var events = require('events'); var stream = require('stream'); var assert = require('assert').ok; +var Buffer = require('buffer').Buffer; var constants = require('constants'); var Timer = process.binding('timer_wrap').Timer; diff --git a/lib/zlib.js b/lib/zlib.js index c72ab92dc..0004f9da4 100644 --- a/lib/zlib.js +++ b/lib/zlib.js @@ -23,6 +23,7 @@ var Transform = require('_stream_transform'); var binding = process.binding('zlib'); var util = require('util'); +var Buffer = require('buffer').Buffer; var assert = require('assert').ok; // zlib doesn't provide these, so kludge them in following the same |