From a0cd024b397df5ddf926ce640be9d44f7ae09166 Mon Sep 17 00:00:00 2001 From: John-David Dalton Date: Sun, 30 Aug 2015 10:09:28 -0700 Subject: [PATCH] Add checks to `iteratorSymbol` assignment. --- lodash.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lodash.js b/lodash.js index b8fadaf8c..cab1b297f 100644 --- a/lodash.js +++ b/lodash.js @@ -1329,7 +1329,7 @@ clearTimeout = context.clearTimeout, enumerate = Reflect ? Reflect.enumerate : undefined, getPrototypeOf = Object.getPrototypeOf, - iteratorSymbol = Symbol.iterator, + iteratorSymbol = typeof (iteratorSymbol = Symbol && Symbol.iterator) == 'symbol' ? iteratorSymbol : undefined, parseFloat = context.parseFloat, pow = Math.pow, propertyIsEnumerable = objectProto.propertyIsEnumerable, @@ -8677,7 +8677,7 @@ if (isArrayLike(value)) { return value.length ? copyArray(value) : []; } - if (value[iteratorSymbol]) { + if (iteratorSymbol && value[iteratorSymbol]) { return iteratorToArray(value[iteratorSymbol]()); } var tag = objToString.call(value),