diff --git a/src/core.js b/src/core.js index 4c12150d..62e41c96 100644 --- a/src/core.js +++ b/src/core.js @@ -553,7 +553,7 @@ jQuery.extend = jQuery.fn.extend = function() { target[ name ] = jQuery.extend( target[ name ], options[ name ] ); // Don't bring in undefined values - else if ( options[ name ] !== undefined ) + else if ( options[ name ] != undefined ) target[ name ] = options[ name ]; } diff --git a/test/unit/core.js b/test/unit/core.js index f0393041..ce70be68 100644 --- a/test/unit/core.js +++ b/test/unit/core.js @@ -874,7 +874,7 @@ test("$.extend(Object, Object)", function() { ok( typeof ret.foo != "string", "Check to make sure values equal with coersion (but not actually equal) overwrite correctly" ); var ret = jQuery.extend(true, { foo:"bar" }, { foo:null } ); - equals( ret.foo, null, "Check to make sure values equal with coersion (but not actually equal) overwrite correctly" ); + ok( typeof ret.foo !== 'undefined', "Make sure a null value doesn't crash with deep extend, for #1908" ); var defaults = { xnumber1: 5, xnumber2: 7, xstring1: "peter", xstring2: "pan" }, defaultsCopy = { xnumber1: 5, xnumber2: 7, xstring1: "peter", xstring2: "pan" },