else
throw new TypeError('must start with number, buffer, array or string');
- if (this.length > kMaxLength)
- throw new RangeError('length > kMaxLength');
+ if (this.length > kMaxLength) {
+ throw new RangeError('Attempt to allocate Buffer larger than maximum ' +
+ 'size: 0x' + kMaxLength.toString(16) + ' bytes');
+ }
if (this.length < Buffer.poolSize / 2 && this.length > 0) {
if (this.length > poolSize - poolOffset)
function SlowBuffer(length) {
length = length >>> 0;
- if (length > kMaxLength)
- throw new RangeError('length > kMaxLength');
+ if (this.length > kMaxLength) {
+ throw new RangeError('Attempt to allocate Buffer larger than maximum ' +
+ 'size: 0x' + kMaxLength.toString(16) + ' bytes');
+ }
var b = new NativeBuffer(length);
alloc(b, length);
return b;
var Writable = Stream.Writable;
var kMinPoolSpace = 128;
+var kMaxLength = require('smalloc').kMaxLength;
var O_APPEND = constants.O_APPEND || 0;
var O_CREAT = constants.O_CREAT || 0;
return read();
}
+ if (size > kMaxLength)
+ throw new RangeError('File size is greater than possible Buffer: ' +
+ '0x3FFFFFFF bytes');
+
buffer = new Buffer(size);
read();
});