Bug 863246 - Use system principal to load debugger scripts r=billm,bkelly

MozReview-Commit-ID: DPvbR1As2UV
This commit is contained in:
Chung-Sheng Fu
2017-08-07 15:55:39 +08:00
parent 2dc23f9095
commit c717714ff4

View File

@@ -894,10 +894,19 @@ private:
{
AssertIsOnMainThread();
MOZ_ASSERT(aIndex < mLoadInfos.Length());
MOZ_ASSERT_IF(IsMainWorkerScript(), mWorkerScriptType != DebuggerScript);
WorkerPrivate* parentWorker = mWorkerPrivate->GetParent();
nsIPrincipal* principal = mWorkerPrivate->GetPrincipal();
// For JavaScript debugging, the devtools server must run on the same
// thread as the debuggee, indicating the worker uses content principal.
// However, in Bug 863246, web content will no longer be able to load
// resource:// URIs by default, so we need system principal to load
// debugger scripts.
nsIPrincipal* principal = (mWorkerScriptType == DebuggerScript) ?
nsContentUtils::GetSystemPrincipal() :
mWorkerPrivate->GetPrincipal();
nsCOMPtr<nsILoadGroup> loadGroup = mWorkerPrivate->GetLoadGroup();
MOZ_DIAGNOSTIC_ASSERT(principal);