if (mData) {  cairo_destroy(mCR); mCR = nsnull; mOwnsCR = PR_FALSE;  nsCOMPtr<nsIDeviceContext> ctx; mMozContext->GetDeviceContext(*getter_AddRefs(ctx));  nsCOMPtr<nsIInterfaceRequestor> ireq(do_QueryInterface(mBuffer)); if (ireq) { nsCOMPtr<gfxIImageFrame> img(do_GetInterface(ireq)); CopyCairoImageToIImage(mData, mWidth, mHeight, img); } mContainer->DecodingComplete();  nsRect src(0, 0, mSrcSizeTwips.width, mSrcSizeTwips.height); mMozContext->DrawImage(mContainer, src, mDestRectScaledTwips); }
nsSVGCairoCanvas::Flush(){#ifdef XP_MACOSX  if (mSurface)    mSurface->EndQuartzDrawing(mQuartzRef);#endif  return NS_OK;}