diff --git a/mozilla/js/src/xpconnect/src/xpccomponents.cpp b/mozilla/js/src/xpconnect/src/xpccomponents.cpp index 26832bde8d5..959acd51e0a 100644 --- a/mozilla/js/src/xpconnect/src/xpccomponents.cpp +++ b/mozilla/js/src/xpconnect/src/xpccomponents.cpp @@ -3309,8 +3309,12 @@ nsXPCComponents_utils_Sandbox::CallOrConstruct(nsIXPConnectWrappedNative *wrappe if (wrapper) { sop = do_QueryWrappedNative(wrapper); - - prinOrSop = sop; + if (sop) { + prinOrSop = sop; + } else { + principal = do_QueryWrappedNative(wrapper); + prinOrSop = principal; + } } }