From 3fc99095e271002b4450a22cb9916c34cdee3bcc Mon Sep 17 00:00:00 2001 From: Francisco Ryan Tolmasky I Date: Sun, 7 Mar 2010 23:48:23 -0800 Subject: [PATCH] Fix bug in keyed unarchiving. Reviewed by me. --- Foundation/CPKeyedUnarchiver.j | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Foundation/CPKeyedUnarchiver.j b/Foundation/CPKeyedUnarchiver.j index 36ec512f8..b828df554 100644 --- a/Foundation/CPKeyedUnarchiver.j +++ b/Foundation/CPKeyedUnarchiver.j @@ -465,7 +465,7 @@ var _CPKeyedUnarchiverDecodeObjectAtIndex = function(self, anIndex) self._plistObject = savedPlistObject; - if (processedObject != object) + if (processedObject !== object) { if (self._delegateSelectors & _CPKeyedUnarchiverWillReplaceObjectWithObjectSelector) [self._delegate unarchiver:self willReplaceObject:object withObject:processedObject]; @@ -519,7 +519,7 @@ var _CPKeyedUnarchiverDecodeObjectAtIndex = function(self, anIndex) // If this object is a member of _CPKeyedArchiverValue, then we know // that it is a wrapper for a primitive JavaScript object. - if (object.isa === _CPKeyedArchiverValueClass) + if (object && (object.isa === _CPKeyedArchiverValueClass)) object = [object JSObject]; return object;