diff --git a/mozilla/layout/base/nsPresContext.cpp b/mozilla/layout/base/nsPresContext.cpp index 921fd3bd74f..7595aac0ad7 100644 --- a/mozilla/layout/base/nsPresContext.cpp +++ b/mozilla/layout/base/nsPresContext.cpp @@ -27,7 +27,9 @@ #include "nsIRenderingContext.h" #include "nsEventStateManager.h" #include "nsIURL.h" -#ifndef NECKO +#ifdef NECKO +#include "nsILoadGroup.h" +#else #include "nsIURLGroup.h" #endif #include "nsIDocument.h" @@ -701,16 +703,24 @@ nsPresContext::GetImageGroup(nsIImageGroup** aResult) return rv; } -#ifndef NECKO // Initialize the image group - nsCOMPtr LoadGroup; - rv = mBaseURL->GetLoadGroup(getter_AddRefs(LoadGroup)); + nsCOMPtr loadGroup; +#ifdef NECKO + nsCOMPtr doc; + if (NS_SUCCEEDED(mShell->GetDocument(getter_AddRefs(doc)))) { + NS_ASSERTION(doc, "expect document here"); + if (doc) { + loadGroup = doc->GetDocumentLoadGroup(); + } + } +#else + rv = mBaseURL->GetLoadGroup(getter_AddRefs(loadGroup)); +#endif if (rv == NS_OK) - rv = mImageGroup->Init(mDeviceContext, LoadGroup); + rv = mImageGroup->Init(mDeviceContext, loadGroup); if (NS_OK != rv) { return rv; } -#endif } *aResult = mImageGroup; diff --git a/mozilla/layout/base/src/nsPresContext.cpp b/mozilla/layout/base/src/nsPresContext.cpp index 921fd3bd74f..7595aac0ad7 100644 --- a/mozilla/layout/base/src/nsPresContext.cpp +++ b/mozilla/layout/base/src/nsPresContext.cpp @@ -27,7 +27,9 @@ #include "nsIRenderingContext.h" #include "nsEventStateManager.h" #include "nsIURL.h" -#ifndef NECKO +#ifdef NECKO +#include "nsILoadGroup.h" +#else #include "nsIURLGroup.h" #endif #include "nsIDocument.h" @@ -701,16 +703,24 @@ nsPresContext::GetImageGroup(nsIImageGroup** aResult) return rv; } -#ifndef NECKO // Initialize the image group - nsCOMPtr LoadGroup; - rv = mBaseURL->GetLoadGroup(getter_AddRefs(LoadGroup)); + nsCOMPtr loadGroup; +#ifdef NECKO + nsCOMPtr doc; + if (NS_SUCCEEDED(mShell->GetDocument(getter_AddRefs(doc)))) { + NS_ASSERTION(doc, "expect document here"); + if (doc) { + loadGroup = doc->GetDocumentLoadGroup(); + } + } +#else + rv = mBaseURL->GetLoadGroup(getter_AddRefs(loadGroup)); +#endif if (rv == NS_OK) - rv = mImageGroup->Init(mDeviceContext, LoadGroup); + rv = mImageGroup->Init(mDeviceContext, loadGroup); if (NS_OK != rv) { return rv; } -#endif } *aResult = mImageGroup;