From 01b0d67c41f9eb77951acab7c8ea46a558115b86 Mon Sep 17 00:00:00 2001 From: "reed%reedloden.com" Date: Tue, 25 Mar 2008 23:16:21 +0000 Subject: [PATCH] Bug 422025 - [p=jst@mozilla.org (Johnny Stenback [jst]) r+sr=mrbkap a1.9b5=schrep] git-svn-id: svn://10.0.0.236/trunk@248564 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/js/src/xpconnect/src/XPCWrapper.cpp | 2 +- mozilla/js/src/xpconnect/src/xpcconvert.cpp | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/mozilla/js/src/xpconnect/src/XPCWrapper.cpp b/mozilla/js/src/xpconnect/src/XPCWrapper.cpp index d6bde79820f..c823bc3a59e 100644 --- a/mozilla/js/src/xpconnect/src/XPCWrapper.cpp +++ b/mozilla/js/src/xpconnect/src/XPCWrapper.cpp @@ -215,7 +215,7 @@ XPCWrapper::AddProperty(JSContext *cx, JSObject *wrapperObj, attrs = sprop->attrs; if (attrs & JSPROP_GETTER) { - getter = sprop->getter; + getter = sprop->getter; } if (attrs & JSPROP_SETTER) { setter = sprop->setter; diff --git a/mozilla/js/src/xpconnect/src/xpcconvert.cpp b/mozilla/js/src/xpconnect/src/xpcconvert.cpp index 381178c8cac..35121aba279 100644 --- a/mozilla/js/src/xpconnect/src/xpcconvert.cpp +++ b/mozilla/js/src/xpconnect/src/xpcconvert.cpp @@ -1219,6 +1219,24 @@ XPCConvert::NativeInterface2JSObject(XPCCallContext& ccx, *dest = objHolder; return JS_TRUE; } + + // Reaching across scopes from content code. Wrap + // the new object in a XOW. + jsval v = OBJECT_TO_JSVAL(flat); + XPCJSObjectHolder *objHolder = nsnull; + if (!XPC_XOW_WrapObject(ccx, scope, &v) || + !(objHolder = + XPCJSObjectHolder::newHolder(ccx, + JSVAL_TO_OBJECT(v)))) + { + NS_RELEASE(wrapper); + return JS_FALSE; + } + + NS_ADDREF(objHolder); + NS_RELEASE(wrapper); + *dest = objHolder; + return JS_TRUE; } }