From a553da6bbbc33e7574f66b095d048c48a72ffbd7 Mon Sep 17 00:00:00 2001 From: "bzbarsky%mit.edu" Date: Thu, 4 May 2006 15:23:43 +0000 Subject: [PATCH] Disable optimization that relies on invariants we don't maintain. Bug 317240 wallpaper, r+sr=jst git-svn-id: svn://10.0.0.236/trunk@195964 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/caps/include/nsScriptSecurityManager.h | 7 ++----- mozilla/caps/src/nsScriptSecurityManager.cpp | 13 +++---------- 2 files changed, 5 insertions(+), 15 deletions(-) diff --git a/mozilla/caps/include/nsScriptSecurityManager.h b/mozilla/caps/include/nsScriptSecurityManager.h index b14a3a5fc68..7f3c7736f58 100644 --- a/mozilla/caps/include/nsScriptSecurityManager.h +++ b/mozilla/caps/include/nsScriptSecurityManager.h @@ -416,11 +416,8 @@ private: // Returns null if a principal cannot be found; generally callers // should error out at that point. static nsIPrincipal* - doGetObjectPrincipal(JSContext *cx, JSObject *obj -#ifdef DEBUG - , PRBool aAllowShortCircuit = PR_TRUE -#endif - ); + doGetObjectPrincipal(JSContext *cx, JSObject *obj, + PRBool aAllowShortCircuit = PR_FALSE); // Returns null if a principal cannot be found. Note that rv can be NS_OK // when this happens -- this means that there was no JS running. diff --git a/mozilla/caps/src/nsScriptSecurityManager.cpp b/mozilla/caps/src/nsScriptSecurityManager.cpp index 44a2b1223f4..d155238f849 100644 --- a/mozilla/caps/src/nsScriptSecurityManager.cpp +++ b/mozilla/caps/src/nsScriptSecurityManager.cpp @@ -2130,11 +2130,8 @@ nsScriptSecurityManager::GetObjectPrincipal(JSContext *aCx, JSObject *aObj, // static nsIPrincipal* -nsScriptSecurityManager::doGetObjectPrincipal(JSContext *aCx, JSObject *aObj -#ifdef DEBUG - , PRBool aAllowShortCircuit -#endif - ) +nsScriptSecurityManager::doGetObjectPrincipal(JSContext *aCx, JSObject *aObj, + PRBool aAllowShortCircuit) { NS_ASSERTION(aCx && aObj, "Bad call to doGetObjectPrincipal()!"); nsIPrincipal* result = nsnull; @@ -2163,12 +2160,9 @@ nsScriptSecurityManager::doGetObjectPrincipal(JSContext *aCx, JSObject *aObj if (NS_LIKELY(xpcWrapper != nsnull)) { -#ifdef DEBUG - if (aAllowShortCircuit) + if (NS_UNLIKELY(aAllowShortCircuit)) { -#endif result = xpcWrapper->GetObjectPrincipal(); -#ifdef DEBUG } else { @@ -2179,7 +2173,6 @@ nsScriptSecurityManager::doGetObjectPrincipal(JSContext *aCx, JSObject *aObj result = objPrin->GetPrincipal(); } } -#endif } else {