Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
60 commits
Select commit Hold shift + click to select a range
b187d16
src: externalized messages support, 2nd pass
jasnell Jan 7, 2016
6401743
src: externalize debugger.js messages
jasnell Jan 8, 2016
3fcddc4
src: externalized _debug_agent.js messages
jasnell Jan 8, 2016
503092e
test, src: add test-internal-messages.js, address nits
jasnell Jan 8, 2016
4359ec9
src: fix lint issue
jasnell Jan 8, 2016
c48ec49
src: externalize lib/_http_agent.js messages
jasnell Jan 8, 2016
112b084
src: externalize _http_client.js messages
jasnell Jan 8, 2016
8538841
src: externalize _http_outgoing.js messages, address nits
jasnell Jan 8, 2016
ff170ed
src: remove NODE_ prefix from message identifiers
jasnell Jan 8, 2016
bdca377
src: externalize _http_server.js messages
jasnell Jan 8, 2016
b270571
src: externalize _linklist.js messages
jasnell Jan 8, 2016
1b1e228
src: externalize _stream_readable.js messages
jasnell Jan 8, 2016
ee2228d
src: externalize _stream_transform.js messages
jasnell Jan 8, 2016
71d1fae
src: externalize _stream_wrap.js messages
jasnell Jan 8, 2016
eb882bc
src: externalized _stream_writable.js messages
jasnell Jan 8, 2016
0de2994
tools: enable restParams for eslint
jasnell Jan 8, 2016
0f0298e
src: externalize _tls_legacy.js messages, refactor debug
jasnell Jan 8, 2016
f095579
src: externalize _tls_wrap.js messages
jasnell Jan 9, 2016
62f6ec9
src: externalize assert.js messages
jasnell Jan 9, 2016
5d73fb3
src: externalize buffer.js messages
jasnell Jan 9, 2016
b1bc41f
src: externalize child-process.js messages
jasnell Jan 9, 2016
018472b
src: externalize cluster.js messages
jasnell Jan 9, 2016
7aa5d4f
src: externalize console.js messages
jasnell Jan 9, 2016
20640e8
src: externalize crypto.js messages
jasnell Jan 9, 2016
78b9090
src: externalize dgram.js messages
jasnell Jan 9, 2016
82679a5
src: externalize dns.js messages
jasnell Jan 9, 2016
649721b
src: externalize events.js messages
jasnell Jan 9, 2016
11b96dc
src: externalize fs.js messages
jasnell Jan 9, 2016
abc08a9
src: externalize http.js messages
jasnell Jan 9, 2016
0b9c3af
src: externalize https.js messages
jasnell Jan 9, 2016
0e8b40a
src: externalize module.js messages
jasnell Jan 9, 2016
650ab1c
src: externalize net.js messages
jasnell Jan 9, 2016
d89c414
src: externalize os.js messages
jasnell Jan 9, 2016
181e5c6
src: externalize path.js messages
jasnell Jan 9, 2016
b1ca5e1
src: externalize punycode.js messages
jasnell Jan 9, 2016
55fa5d8
src: externalize readline.js messages
jasnell Jan 9, 2016
5f4861d
src: externalize repl.js messages
jasnell Jan 9, 2016
67185ec
src: externalize string_decoder.js messages
jasnell Jan 9, 2016
f0c5782
src: externalize sys.js messages
jasnell Jan 9, 2016
497329f
src: externalized timers.js messages
jasnell Jan 9, 2016
e142e8a
src: externalize tls.js messages
jasnell Jan 9, 2016
678e8e8
src: externalize url.js messages
jasnell Jan 9, 2016
0a197c8
src: externalize util.js messages
jasnell Jan 9, 2016
cd4db97
src: externalize zlib.js messages
jasnell Jan 9, 2016
61240ea
src: externalize internal/child_process.js messages
jasnell Jan 9, 2016
259a36d
src: externalize internal/repl.js messages
jasnell Jan 9, 2016
96aa61f
src: externalize internal/socket_list.js messages
jasnell Jan 9, 2016
b885af3
src: externalize internal/v8_prof_polyfill.js messages
jasnell Jan 9, 2016
924aa9d
src: externalize additional messages missed
jasnell Jan 9, 2016
086bd73
src: avoid runtime calls
jasnell Jan 9, 2016
46fcb2d
src: code cleanup
jasnell Jan 9, 2016
edcb53b
src: refactor I18N.Error, I18N.TypeError and I18N.RangeError
jasnell Jan 10, 2016
42b7c7f
src: internal/messages.js code cleanup
jasnell Jan 10, 2016
21b1d95
src: begin externalizing src/* messages
jasnell Jan 10, 2016
5545855
src: externalize more native strings
jasnell Jan 11, 2016
08866a3
src: support varargs in messages, externalize src/node_dtrace.cc
jasnell Jan 11, 2016
44cc074
src: refactor macros to make env explicit, externalize node_file.cc
jasnell Jan 11, 2016
a5d97de
src: externalize additional src/*.cc files
jasnell Jan 11, 2016
9fc6ec1
src: externalize remaining errors in src/*.cc
jasnell Jan 11, 2016
92df8e6
src: externalize node.cc messages and print help, cleanups
jasnell Jan 11, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
src: externalize zlib.js messages
  • Loading branch information
jasnell committed Jan 11, 2016
commit cd4db97ef442355fbbbb08798726a503cb1e8c79
41 changes: 20 additions & 21 deletions lib/zlib.js
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
'use strict';

const I18N = require('internal/messages');
const Buffer = require('buffer').Buffer;
const Transform = require('_stream_transform');
const binding = process.binding('zlib');
const util = require('util');
const assert = require('assert').ok;
const kMaxLength = require('buffer').kMaxLength;
const kRangeErrorMessage = 'Cannot create final Buffer. ' +
'It would be larger than 0x' + kMaxLength.toString(16) + ' bytes';
const kRangeErrorMessage = I18N(I18N.ZLIB_RANGE_ERROR, kMaxLength.toString(16));

// zlib doesn't provide these, so kludge them in following the same
// const naming scheme zlib uses.
Expand Down Expand Up @@ -232,7 +232,7 @@ function zlibBufferSync(engine, buffer) {
if (typeof buffer === 'string')
buffer = new Buffer(buffer);
if (!(buffer instanceof Buffer))
throw new TypeError('Not a string or buffer');
throw I18N.TypeError(I18N.ZLIB_STRING_OR_BUFFER, 'buffer');

var flushFlag = binding.Z_FINISH;

Expand Down Expand Up @@ -301,36 +301,36 @@ function Zlib(opts, mode) {
opts.flush !== binding.Z_FULL_FLUSH &&
opts.flush !== binding.Z_FINISH &&
opts.flush !== binding.Z_BLOCK) {
throw new Error('Invalid flush flag: ' + opts.flush);
throw I18N.Error(I18N.ZLIB_INVALID_FLUSH_FLAG, opts.flush);
}
}
this._flushFlag = opts.flush || binding.Z_NO_FLUSH;

if (opts.chunkSize) {
if (opts.chunkSize < exports.Z_MIN_CHUNK ||
opts.chunkSize > exports.Z_MAX_CHUNK) {
throw new Error('Invalid chunk size: ' + opts.chunkSize);
throw I18N.Error(I18N.ZLIB_INVALID_CHUNK_SIZE, opts.chunkSize);
}
}

if (opts.windowBits) {
if (opts.windowBits < exports.Z_MIN_WINDOWBITS ||
opts.windowBits > exports.Z_MAX_WINDOWBITS) {
throw new Error('Invalid windowBits: ' + opts.windowBits);
throw I18N.Error(I18N.ZLIB_INVALID_WINDOWBITS, opts.windowBits);
}
}

if (opts.level) {
if (opts.level < exports.Z_MIN_LEVEL ||
opts.level > exports.Z_MAX_LEVEL) {
throw new Error('Invalid compression level: ' + opts.level);
throw I18N.Error(I18N.ZLIB_INVALID_COMPRESSION, opts.level);
}
}

if (opts.memLevel) {
if (opts.memLevel < exports.Z_MIN_MEMLEVEL ||
opts.memLevel > exports.Z_MAX_MEMLEVEL) {
throw new Error('Invalid memLevel: ' + opts.memLevel);
throw I18N.Error(I18N.ZLIB_INVALID_MEMLEVEL, opts.memLevel);
}
}

Expand All @@ -340,14 +340,13 @@ function Zlib(opts, mode) {
opts.strategy != exports.Z_RLE &&
opts.strategy != exports.Z_FIXED &&
opts.strategy != exports.Z_DEFAULT_STRATEGY) {
throw new Error('Invalid strategy: ' + opts.strategy);
throw I18N.Error(I18N.ZLIB_INVALID_STRATEGY, opts.strategy);
}
}

if (opts.dictionary) {
if (!(opts.dictionary instanceof Buffer)) {
throw new Error('Invalid dictionary: it should be a Buffer instance');
}
if (!(opts.dictionary instanceof Buffer))
throw I18N.Error(I18N.ZLIB_INVALID_DICTIONARY);
}

this._handle = new binding.Zlib(mode);
Expand Down Expand Up @@ -392,20 +391,20 @@ util.inherits(Zlib, Transform);
Zlib.prototype.params = function(level, strategy, callback) {
if (level < exports.Z_MIN_LEVEL ||
level > exports.Z_MAX_LEVEL) {
throw new RangeError('Invalid compression level: ' + level);
throw I18N.RangeError(I18N.ZLIB_INVALID_COMPRESSION, level);
}
if (strategy != exports.Z_FILTERED &&
strategy != exports.Z_HUFFMAN_ONLY &&
strategy != exports.Z_RLE &&
strategy != exports.Z_FIXED &&
strategy != exports.Z_DEFAULT_STRATEGY) {
throw new TypeError('Invalid strategy: ' + strategy);
throw I18N.TypeError(I18N.ZLIB_INVALID_STRATEGY, strategy);
}

if (this._level !== level || this._strategy !== strategy) {
var self = this;
this.flush(binding.Z_SYNC_FLUSH, function() {
assert(!self._closed, 'zlib binding closed');
assert(!self._closed, I18N(I18N.ZLIB_ASSERT_BINDING_CLOSED));
self._handle.params(level, strategy);
if (!self._hadError) {
self._level = level;
Expand All @@ -419,7 +418,7 @@ Zlib.prototype.params = function(level, strategy, callback) {
};

Zlib.prototype.reset = function() {
assert(!this._closed, 'zlib binding closed');
assert(!this._closed, I18N(I18N.ZLIB_ASSERT_BINDING_CLOSED));
return this._handle.reset();
};

Expand Down Expand Up @@ -478,10 +477,10 @@ Zlib.prototype._transform = function(chunk, encoding, cb) {
var last = ending && (!chunk || ws.length === chunk.length);

if (chunk !== null && !(chunk instanceof Buffer))
return cb(new Error('invalid input'));
return cb(I18N.Error(I18N.ZLIB_INVALID_INPUT));

if (this._closed)
return cb(new Error('zlib binding closed'));
return cb(I18N.Error(I18N.ZLIB_ASSERT_BINDING_CLOSED));

// If it's the last chunk, or a final flush, we use the Z_FINISH flush flag.
// If it's explicitly flushing at some other time, then we use
Expand Down Expand Up @@ -519,7 +518,7 @@ Zlib.prototype._processChunk = function(chunk, flushFlag, cb) {
error = er;
});

assert(!this._closed, 'zlib binding closed');
assert(!this._closed, I18N(I18N.ZLIB_ASSERT_BINDING_CLOSED));
do {
var res = this._handle.writeSync(flushFlag,
chunk, // in
Expand All @@ -545,7 +544,7 @@ Zlib.prototype._processChunk = function(chunk, flushFlag, cb) {
return buf;
}

assert(!this._closed, 'zlib binding closed');
assert(!this._closed, I18N(I18N.ZLIB_ASSERT_BINDING_CLOSED));
var req = this._handle.write(flushFlag,
chunk, // in
inOff, // in_off
Expand All @@ -562,7 +561,7 @@ Zlib.prototype._processChunk = function(chunk, flushFlag, cb) {
return;

var have = availOutBefore - availOutAfter;
assert(have >= 0, 'have should not go down');
assert(have >= 0, I18N(I18N.ZLIB_ASSERT_HAVE_GO_DOWN));

if (have > 0) {
var out = self._buffer.slice(self._offset, self._offset + have);
Expand Down
14 changes: 14 additions & 0 deletions src/messages/en/messages.h
Original file line number Diff line number Diff line change
Expand Up @@ -430,5 +430,19 @@
XX(UTIL_ERROR_DEPRECATED, \
NODE_DEPRECATE_MESSAGE("util.error", "console.error")) \
XX(UTIL_LOCAL, "Local") \
XX(ZLIB_RANGE_ERROR, \
"Cannot create final Buffer. It would be larger than 0x{0} bytes") \
XX(ZLIB_STRING_OR_BUFFER, "'{0}' must be a string or Buffer") \
XX(ZLIB_INVALID_FLUSH_FLAG, "Invalid flush flag: {0}") \
XX(ZLIB_INVALID_CHUNK_SIZE, "Invalid chunk size: {0}") \
XX(ZLIB_INVALID_WINDOWBITS, "Invalid windowBits: {0}") \
XX(ZLIB_INVALID_COMPRESSION, "Invalid compression level: {0}") \
XX(ZLIB_INVALID_MEMLEVEL, "Invalid memLevel: {0}") \
XX(ZLIB_INVALID_STRATEGY, "Invalid strategy: {0}") \
XX(ZLIB_INVALID_DICTIONARY, \
"Invalid dictionary: it should be a Buffer instance") \
XX(ZLIB_ASSERT_BINDING_CLOSED, "zlib binding closed") \
XX(ZLIB_INVALID_INPUT, "invalid input") \
XX(ZLIB_ASSERT_HAVE_GO_DOWN, "have should not go down") \

#endif // SRC_NODE_MESSAGES_SRC_H_