diff --git a/mozilla/caps/src/nsScriptSecurityManager.cpp b/mozilla/caps/src/nsScriptSecurityManager.cpp index ea3e77a87b2..85696a51be3 100644 --- a/mozilla/caps/src/nsScriptSecurityManager.cpp +++ b/mozilla/caps/src/nsScriptSecurityManager.cpp @@ -1558,6 +1558,13 @@ nsScriptSecurityManager::CanExecuteScripts(JSContext* cx, //-- See if the current window allows JS execution nsIScriptContext *scriptContext = GetScriptContext(cx); if (!scriptContext) return NS_ERROR_FAILURE; + + if (!scriptContext->GetScriptsEnabled()) { + // No scripting on this context, folks + *result = PR_FALSE; + return NS_OK; + } + nsIScriptGlobalObject *sgo = scriptContext->GetGlobalObject(); if (!sgo) { diff --git a/mozilla/layout/printing/nsPrintEngine.cpp b/mozilla/layout/printing/nsPrintEngine.cpp index c33d9a30340..15d749d5b47 100644 --- a/mozilla/layout/printing/nsPrintEngine.cpp +++ b/mozilla/layout/printing/nsPrintEngine.cpp @@ -2506,46 +2506,6 @@ nsPrintEngine::ReflowDocList(nsPrintObject* aPO, PRBool aSetPixelScale, PRBool a return NS_OK; } -PR_STATIC_CALLBACK(void *) -HandleBarrierEvent(PLEvent *aEvent) -{ - PRBool *b = NS_STATIC_CAST(PRBool *, PL_GetEventOwner(aEvent)); - *b = PR_TRUE; - return nsnull; -} - -PR_STATIC_CALLBACK(void) -DestroyBarrierEvent(PLEvent *aEvent) -{ -} - -static void -FlushEventQueue() -{ - PRBool hitBarrier = PR_FALSE; - nsCOMPtr eventQ; - nsresult rv = NS_GetMainEventQ(getter_AddRefs(eventQ)); - if (NS_FAILED(rv)) - return; - - PLEvent evt; - - PL_InitEvent(&evt, &hitBarrier, HandleBarrierEvent, DestroyBarrierEvent); - - if (NS_FAILED(eventQ->PostEvent(&evt))) - return; - - while (!hitBarrier) { - PLEvent *next; - eventQ->GetEvent(&next); - if (!next) { - NS_ERROR("barrier event not found!"); - return; - } - eventQ->HandleEvent(next); - } -} - //------------------------------------------------------- // Reflow a nsPrintObject nsresult @@ -2756,7 +2716,6 @@ nsPrintEngine::ReflowPrintObject(nsPrintObject * aPO, PRBool aDoCalcShrink) aPO->mPresContext->SetPageDim(adjRect); rv = aPO->mPresShell->InitialReflow(width, height); - FlushEventQueue(); if (NS_SUCCEEDED(rv)) { // Transfer Selection Ranges to the new Print PresShell nsCOMPtr selection;