nsCacheEntryDescriptor::AsyncRead(nsIStreamListener * listener, nsISupports *       ctxt, PRUint32            offset, PRUint32            count, PRUint32            flags, nsIRequest       ** result)
nsTransportWrapper::AsyncRead(nsIStreamListener * listener, nsISupports *       ctxt, PRUint32            offset, PRUint32            count, PRUint32            flags, nsIRequest       ** result)
nsCacheEntryDescriptor::AsyncRead(nsIStreamListener * listener,                                  nsISupports *       ctxt,                                  PRUint32            offset,                                  PRUint32            count,                                  PRUint32            flags,                                  nsIRequest       ** result){    NS_ENSURE_ARG_POINTER(result);    if (!mCacheEntry)  return NS_ERROR_NOT_AVAILABLE;    if (!(mAccessGranted & nsICache::ACCESS_READ))        return NS_ERROR_CACHE_READ_ACCESS_DENIED;    if (!mTransport) {        nsresult rv;        rv = nsCacheService::GlobalInstance()->            GetTransportForEntry(mCacheEntry,                                 mAccessGranted,                                 getter_AddRefs(mTransport));        if (NS_FAILED(rv))  return rv;    }        return mTransport->AsyncRead(listener, ctxt, offset, count, flags, result);}