diff options
author | Ben Noordhuis <info@bnoordhuis.nl> | 2016-04-15 19:40:01 +0200 |
---|---|---|
committer | Ben Noordhuis <info@bnoordhuis.nl> | 2016-04-18 11:39:52 +0200 |
commit | 642076f2aff3cddf93dd7cb6b1a332f8064ab39f (patch) | |
tree | 4f47a6234a1eab74cd881b6ccbb48de38d614fd6 /lib | |
parent | 15f13cd74a8bb9e62b871076328447b4ead7e8b6 (diff) | |
download | android-node-v8-642076f2aff3cddf93dd7cb6b1a332f8064ab39f.tar.gz android-node-v8-642076f2aff3cddf93dd7cb6b1a332f8064ab39f.tar.bz2 android-node-v8-642076f2aff3cddf93dd7cb6b1a332f8064ab39f.zip |
src: don't set non-primitive values on templates
V8 is going to disallow non-primitive values on v8::FunctionTemplate
and v8::ObjectTemplate because those can't be shared across contexts.
Fixes: https://github.com/nodejs/node/issues/6216
PR-URL: https://github.com/nodejs/node/pull/6228
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/_http_common.js | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/_http_common.js b/lib/_http_common.js index 08f93d8c4d..7c9fac5c6b 100644 --- a/lib/_http_common.js +++ b/lib/_http_common.js @@ -1,8 +1,10 @@ 'use strict'; -const FreeList = require('internal/freelist').FreeList; -const HTTPParser = process.binding('http_parser').HTTPParser; +const binding = process.binding('http_parser'); +const methods = binding.methods; +const HTTPParser = binding.HTTPParser; +const FreeList = require('internal/freelist').FreeList; const incoming = require('_http_incoming'); const IncomingMessage = incoming.IncomingMessage; const readStart = incoming.readStart; @@ -14,7 +16,7 @@ exports.debug = debug; exports.CRLF = '\r\n'; exports.chunkExpression = /chunk/i; exports.continueExpression = /100-continue/i; -exports.methods = HTTPParser.methods; +exports.methods = methods; const kOnHeaders = HTTPParser.kOnHeaders | 0; const kOnHeadersComplete = HTTPParser.kOnHeadersComplete | 0; @@ -71,7 +73,7 @@ function parserOnHeadersComplete(versionMajor, versionMinor, headers, method, if (typeof method === 'number') { // server only - parser.incoming.method = HTTPParser.methods[method]; + parser.incoming.method = methods[method]; } else { // client only parser.incoming.statusCode = statusCode; |