Commit 82356d46 authored by Joe Drew's avatar Joe Drew
Browse files

Backed out changeset 6bedb1e92dd0 due to refcount leaks

parent 16d0ef18
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -121,11 +121,11 @@ nsImageLoadingContent::DestroyImageLoadingContent()
{
  // Cancel our requests so they won't hold stale refs to us
  if (mCurrentRequest) {
    mCurrentRequest->CancelAndForgetObserver(NS_ERROR_FAILURE);
    mCurrentRequest->Cancel(NS_ERROR_FAILURE);
    mCurrentRequest = nsnull;
  }
  if (mPendingRequest) {
    mPendingRequest->CancelAndForgetObserver(NS_ERROR_FAILURE);
    mPendingRequest->Cancel(NS_ERROR_FAILURE);
    mPendingRequest = nsnull;
  }
}
+3 −3
Original line number Diff line number Diff line
@@ -74,7 +74,7 @@ nsImageLoader::~nsImageLoader()
  mPresContext = nsnull;

  if (mRequest) {
    mRequest->CancelAndForgetObserver(NS_ERROR_FAILURE);
    mRequest->Cancel(NS_ERROR_FAILURE);
  }
}

@@ -95,7 +95,7 @@ nsImageLoader::Destroy()
  mPresContext = nsnull;

  if (mRequest) {
    mRequest->CancelAndForgetObserver(NS_ERROR_FAILURE);
    mRequest->Cancel(NS_ERROR_FAILURE);
  }

  mRequest = nsnull;
@@ -122,7 +122,7 @@ nsImageLoader::Load(imgIRequest *aImage)
    }

    // Now cancel the old request so it won't hold a stale ref to us.
    mRequest->CancelAndForgetObserver(NS_ERROR_FAILURE);
    mRequest->Cancel(NS_ERROR_FAILURE);
    mRequest = nsnull;
  }

+2 −2
Original line number Diff line number Diff line
@@ -307,11 +307,11 @@ private:
    {
      // in case the pref service releases us later
      if (mLoadingImage) {
        mLoadingImage->CancelAndForgetObserver(NS_ERROR_FAILURE);
        mLoadingImage->Cancel(NS_ERROR_FAILURE);
        mLoadingImage = nsnull;
      }
      if (mBrokenImage) {
        mBrokenImage->CancelAndForgetObserver(NS_ERROR_FAILURE);
        mBrokenImage->Cancel(NS_ERROR_FAILURE);
        mBrokenImage = nsnull;
      }
    }
+1 −1
Original line number Diff line number Diff line
@@ -207,7 +207,7 @@ nsImageBoxFrame::Destroy()
{
  // Release image loader first so that it's refcnt can go to zero
  if (mImageRequest)
    mImageRequest->CancelAndForgetObserver(NS_ERROR_FAILURE);
    mImageRequest->Cancel(NS_ERROR_FAILURE);

  if (mListener)
    reinterpret_cast<nsImageBoxListener*>(mListener.get())->SetFrame(nsnull); // set the frame to null so we don't send messages to a dead object.
+0 −6
Original line number Diff line number Diff line
@@ -104,11 +104,5 @@ interface imgIRequest : nsIRequest
   * The principal gotten from the channel the image was loaded from.
   */
  readonly attribute nsIPrincipal imagePrincipal;

  /**
   * Cancels this request as in nsIRequest::Cancel(); further, also nulls out
   * decoderObserver so it gets no further notifications from us.
   */
  void cancelAndForgetObserver(in nsresult aStatus);
};
Loading