PRUint32 groupload_attrib = 0; GetImgLoadAttributes(&groupload_attrib);  if(!aFlags) aFlags = groupload_attrib;
ImageGroupImpl::GetImageFromStream(const char* aUrl,                                   nsIImageRequestObserver *aObserver,                                   const nscolor* aBackgroundColor,                                   PRUint32 aWidth, PRUint32 aHeight,                                   PRUint32 aFlags,                                   nsIImageRequest*& aResult,                                   nsIStreamListener*& aListenerResult){  NS_PRECONDITION(nsnull != aUrl, "null URL");    nsresult  result = NS_OK;  ImageRequestImpl *image_req = new ImageRequestImpl;  if (nsnull == image_req) {    return NS_ERROR_OUT_OF_MEMORY;  }      // Ask the image request object to get the image.  nsIStreamListener* listener = nsnull;  mListenerRequest = &listener;  result = image_req->Init(mGroupContext, aUrl, aObserver, aBackgroundColor,                           aWidth, aHeight, aFlags, mNetContext);  aListenerResult = listener;  mListenerRequest = nsnull;  if (NS_SUCCEEDED(result)) {    NS_ADDREF(image_req);  } else {    delete image_req;    image_req = nsnull;  }  aResult = image_req;  return result;}