From 4bebfdcdbc353adc9372658dc8fc1ce976770b5d Mon Sep 17 00:00:00 2001 From: Christoph Kerschbaumer Date: Fri, 24 Jul 2015 12:15:14 -0700 Subject: [PATCH] Bug 1187217 - Fix deref nullptr loadInfo in nsDocShell::LoadStream. r=bz --- docshell/base/nsDocShell.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/docshell/base/nsDocShell.cpp b/docshell/base/nsDocShell.cpp index e73e2722fe9b..d438ef436658 100644 --- a/docshell/base/nsDocShell.cpp +++ b/docshell/base/nsDocShell.cpp @@ -1710,20 +1710,22 @@ nsDocShell::LoadStream(nsIInputStream* aStream, nsIURI* aURI, } uint32_t loadType = LOAD_NORMAL; + nsCOMPtr requestingPrincipal; if (aLoadInfo) { nsDocShellInfoLoadType lt = nsIDocShellLoadInfo::loadNormal; (void)aLoadInfo->GetLoadType(<); // Get the appropriate LoadType from nsIDocShellLoadInfo type loadType = ConvertDocShellLoadInfoToLoadType(lt); + + nsCOMPtr owner; + aLoadInfo->GetOwner(getter_AddRefs(owner)); + requestingPrincipal = do_QueryInterface(owner); } NS_ENSURE_SUCCESS(Stop(nsIWebNavigation::STOP_NETWORK), NS_ERROR_FAILURE); mLoadType = loadType; - nsCOMPtr owner; - aLoadInfo->GetOwner(getter_AddRefs(owner)); - nsCOMPtr requestingPrincipal = do_QueryInterface(owner); if (!requestingPrincipal) { requestingPrincipal = nsContentUtils::GetSystemPrincipal(); }