diff options
author | Sergey Golovin <golovim@gmail.com> | 2018-03-12 18:59:31 +0300 |
---|---|---|
committer | Luigi Pinca <luigipinca@gmail.com> | 2018-04-05 08:38:46 +0200 |
commit | 354849eeb595ac364337e564669de4c77aa4c1af (patch) | |
tree | 68c85a25a0fd0d5a4d051838381d1dd5e7fc6287 /lib | |
parent | 422ac61535fd190836b174bb6ad8ec2af76e1f05 (diff) | |
download | android-node-v8-354849eeb595ac364337e564669de4c77aa4c1af.tar.gz android-node-v8-354849eeb595ac364337e564669de4c77aa4c1af.tar.bz2 android-node-v8-354849eeb595ac364337e564669de4c77aa4c1af.zip |
url: replace "magic" numbers by constants
PR-URL: https://github.com/nodejs/node/pull/19300
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/internal/constants.js | 2 | ||||
-rw-r--r-- | lib/internal/url.js | 18 |
2 files changed, 15 insertions, 5 deletions
diff --git a/lib/internal/constants.js b/lib/internal/constants.js index 6fc16e57d9..5c884ae6bc 100644 --- a/lib/internal/constants.js +++ b/lib/internal/constants.js @@ -39,6 +39,8 @@ module.exports = { CHAR_CIRCUMFLEX_ACCENT: 94, /* ^ */ CHAR_GRAVE_ACCENT: 96, /* ` */ CHAR_AT: 64, /* @ */ + CHAR_AMPERSAND: 38, /* & */ + CHAR_EQUAL: 61, /* = */ // Digits CHAR_0: 48, /* 0 */ diff --git a/lib/internal/url.js b/lib/internal/url.js index 1513b14e82..21c7c734b5 100644 --- a/lib/internal/url.js +++ b/lib/internal/url.js @@ -19,6 +19,14 @@ const { ERR_INVALID_URL_SCHEME, ERR_MISSING_ARGS } = require('internal/errors').codes; +const { + CHAR_PERCENT, + CHAR_PLUS, + CHAR_AMPERSAND, + CHAR_EQUAL, + CHAR_LOWERCASE_A, + CHAR_LOWERCASE_Z, +} = require('internal/constants'); const querystring = require('querystring'); const { platform } = process; @@ -712,7 +720,7 @@ function parseParams(qs) { const code = qs.charCodeAt(i); // Try matching key/value pair separator - if (code === 38/* & */) { + if (code === CHAR_AMPERSAND) { if (pairStart === i) { // We saw an empty substring between pair separators lastPos = pairStart = i + 1; @@ -738,7 +746,7 @@ function parseParams(qs) { } // Try matching key/value separator (e.g. '=') if we haven't already - if (!seenSep && code === 61/* = */) { + if (!seenSep && code === CHAR_EQUAL) { // Key/value separator match! if (lastPos < i) buf += qs.slice(lastPos, i); @@ -755,7 +763,7 @@ function parseParams(qs) { } // Handle + and percent decoding. - if (code === 43/* + */) { + if (code === CHAR_PLUS) { if (lastPos < i) buf += qs.slice(lastPos, i); buf += ' '; @@ -763,7 +771,7 @@ function parseParams(qs) { } else if (!encoded) { // Try to match an (valid) encoded byte (once) to minimize unnecessary // calls to string decoding functions - if (code === 37/* % */) { + if (code === CHAR_PERCENT) { encodeCheck = 1; } else if (encodeCheck > 0) { // eslint-disable-next-line no-extra-boolean-cast @@ -1357,7 +1365,7 @@ function getPathFromURLWin32(url) { // Otherwise, it's a local path that requires a drive letter var letter = pathname.codePointAt(1) | 0x20; var sep = pathname[2]; - if (letter < 97 || letter > 122 || // a..z A..Z + if (letter < CHAR_LOWERCASE_A || letter > CHAR_LOWERCASE_Z || // a..z A..Z (sep !== ':')) { throw new ERR_INVALID_FILE_URL_PATH('must be absolute'); } |