summaryrefslogtreecommitdiff
path: root/tools/eslint/node_modules/lodash/_cloneBuffer.js
diff options
context:
space:
mode:
Diffstat (limited to 'tools/eslint/node_modules/lodash/_cloneBuffer.js')
-rw-r--r--tools/eslint/node_modules/lodash/_cloneBuffer.js19
1 files changed, 18 insertions, 1 deletions
diff --git a/tools/eslint/node_modules/lodash/_cloneBuffer.js b/tools/eslint/node_modules/lodash/_cloneBuffer.js
index 247d4106f7..27c48109b4 100644
--- a/tools/eslint/node_modules/lodash/_cloneBuffer.js
+++ b/tools/eslint/node_modules/lodash/_cloneBuffer.js
@@ -1,3 +1,18 @@
+var root = require('./_root');
+
+/** Detect free variable `exports`. */
+var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;
+
+/** Detect free variable `module`. */
+var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
+
+/** Detect the popular CommonJS extension `module.exports`. */
+var moduleExports = freeModule && freeModule.exports === freeExports;
+
+/** Built-in value references. */
+var Buffer = moduleExports ? root.Buffer : undefined,
+ allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;
+
/**
* Creates a clone of `buffer`.
*
@@ -10,7 +25,9 @@ function cloneBuffer(buffer, isDeep) {
if (isDeep) {
return buffer.slice();
}
- var result = new buffer.constructor(buffer.length);
+ var length = buffer.length,
+ result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);
+
buffer.copy(result);
return result;
}