diff --git a/mozilla/layout/base/nsPresContext.cpp b/mozilla/layout/base/nsPresContext.cpp index 45ae352ed5c..63bfcc75b93 100644 --- a/mozilla/layout/base/nsPresContext.cpp +++ b/mozilla/layout/base/nsPresContext.cpp @@ -423,15 +423,16 @@ nsPresContext::StartLoadImage(const nsString& aURL, if (NS_OK != rv) { return rv; } + mImageLoaders.AppendElement(loader); rv = loader->Init(this, mImageGroup, aURL, aBackgroundColor, aTargetFrame, aNeedSizeUpdate); if (NS_OK != rv) { + mImageLoaders.RemoveElement(loader); NS_RELEASE(loader); return rv; } // Return the loader - mImageLoaders.AppendElement(loader); NS_ADDREF(loader); aLoaderResult = loader; return NS_OK; diff --git a/mozilla/layout/base/src/nsPresContext.cpp b/mozilla/layout/base/src/nsPresContext.cpp index 45ae352ed5c..63bfcc75b93 100644 --- a/mozilla/layout/base/src/nsPresContext.cpp +++ b/mozilla/layout/base/src/nsPresContext.cpp @@ -423,15 +423,16 @@ nsPresContext::StartLoadImage(const nsString& aURL, if (NS_OK != rv) { return rv; } + mImageLoaders.AppendElement(loader); rv = loader->Init(this, mImageGroup, aURL, aBackgroundColor, aTargetFrame, aNeedSizeUpdate); if (NS_OK != rv) { + mImageLoaders.RemoveElement(loader); NS_RELEASE(loader); return rv; } // Return the loader - mImageLoaders.AppendElement(loader); NS_ADDREF(loader); aLoaderResult = loader; return NS_OK;