Ensure functions created by _.matches don't error when comparing falsey object values. [closes #523]

This commit is contained in:
John-David Dalton
2014-04-10 02:55:35 -07:00
parent f90f683be5
commit b3f5375283
2 changed files with 44 additions and 8 deletions

View File

@@ -7786,7 +7786,7 @@
// property containing a primitive value
if (propsLength == 1 && value === value && !isObject(value)) {
return function(object) {
if (!hasOwnProperty.call(object, key)) {
if (!(object && hasOwnProperty.call(object, key))) {
return false;
}
// treat `-0` vs. `+0` as not equal
@@ -7795,9 +7795,11 @@
};
}
return function(object) {
var length = propsLength,
result = true;
var length = propsLength;
if (length && !object) {
return false;
}
var result = true;
while (length--) {
var key = props[length];
if (!(result = hasOwnProperty.call(object, key) &&