From 268a4610d9e83e0bd0ca126ecee407e274c898bd Mon Sep 17 00:00:00 2001 From: "timeless%mozdev.org" Date: Tue, 11 Mar 2008 17:30:23 +0000 Subject: [PATCH] Bug 246699 CAPS security exceptions should throw richer exception info (not just raw string) r=shaver a=shaver git-svn-id: svn://10.0.0.236/trunk@247553 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/caps/src/nsScriptSecurityManager.cpp | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/mozilla/caps/src/nsScriptSecurityManager.cpp b/mozilla/caps/src/nsScriptSecurityManager.cpp index 00c87959fad..96c99bd3414 100644 --- a/mozilla/caps/src/nsScriptSecurityManager.cpp +++ b/mozilla/caps/src/nsScriptSecurityManager.cpp @@ -149,18 +149,13 @@ GetScriptContext(JSContext *cx) inline void SetPendingException(JSContext *cx, const char *aMsg) { JSAutoRequest ar(cx); - JSString *str = JS_NewStringCopyZ(cx, aMsg); - if (str) - JS_SetPendingException(cx, STRING_TO_JSVAL(str)); + JS_ReportError(cx, "%s", aMsg); } inline void SetPendingException(JSContext *cx, const PRUnichar *aMsg) { JSAutoRequest ar(cx); - JSString *str = JS_NewUCStringCopyZ(cx, - reinterpret_cast(aMsg)); - if (str) - JS_SetPendingException(cx, STRING_TO_JSVAL(str)); + JS_ReportError(cx, "%hs", aMsg); } // DomainPolicy members @@ -705,7 +700,7 @@ nsScriptSecurityManager::CheckSameOrigin(JSContext* cx, if (!SecurityCompareURIs(sourceURI, aTargetURI)) { ReportError(cx, NS_LITERAL_STRING("CheckSameOriginError"), sourceURI, aTargetURI); - return NS_ERROR_DOM_BAD_URI; + return NS_OK; } return NS_OK; } @@ -720,6 +715,7 @@ nsScriptSecurityManager::CheckSameOriginURI(nsIURI* aSourceURI, if (reportError) { ReportError(nsnull, NS_LITERAL_STRING("CheckSameOriginError"), aSourceURI, aTargetURI); + return NS_OK; } return NS_ERROR_DOM_BAD_URI; } @@ -1287,7 +1283,7 @@ nsScriptSecurityManager::CheckLoadURIFromScript(JSContext *cx, nsIURI *aURI) if (NS_FAILED(aURI->GetAsciiSpec(spec))) return NS_ERROR_FAILURE; JS_ReportError(cx, "Access to '%s' from script denied", spec.get()); - return NS_ERROR_DOM_BAD_URI; + return NS_OK; } NS_IMETHODIMP