Followup fix for bug 605167. a=blocking beta 7
authorBlake Kaplan <mrbkap@gmail.com>
Mon, 18 Oct 2010 16:45:39 -0700
changeset 56106 179e4661d61cf278eda29b7ae8dac1e08ce73559
parent 56105 8851d28f1619c37b22f74c3b53aed21c5ddbbd0f
child 56107 6476d61a80d5642548f6fa7691d95282d3f99e3d
push id16409
push usermrbkap@mozilla.com
push dateTue, 19 Oct 2010 17:57:57 +0000
treeherdermozilla-central@179e4661d61c [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersblocking
bugs605167
milestone2.0b8pre
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Followup fix for bug 605167. a=blocking beta 7
js/src/xpconnect/wrappers/WrapperFactory.cpp
--- a/js/src/xpconnect/wrappers/WrapperFactory.cpp
+++ b/js/src/xpconnect/wrappers/WrapperFactory.cpp
@@ -102,17 +102,17 @@ WrapperFactory::PrepareForWrapping(JSCon
     JS_ASSERT(!obj->isWrapper());
 
     // As soon as an object is wrapped in a security wrapper, it morphs to be
     // a fat wrapper. (see also: bug XXX).
     if (IS_SLIM_WRAPPER(obj) && !MorphSlimWrapper(cx, obj))
         return nsnull;
 
     // We only hand out outer objects to script.
-    GetCurrentOuter(cx, obj);
+    obj = GetCurrentOuter(cx, obj);
     if (obj->getClass()->ext.innerObject)
         return DoubleWrap(cx, obj, flags);
 
     // Now, our object is ready to be wrapped, but several objects (notably
     // nsJSIIDs) have a wrapper per scope. If we are about to wrap one of
     // those objects in a security wrapper, then we need to hand back the
     // wrapper for the new scope instead. Also, global objects don't move
     // between scopes so for those we also want to return the wrapper. So...