PRLibrary* lib = nsnull; lib = mInst->fLibrary;  NS_TRY_SAFE_CALL_VOID(CallNPP_StreamAsFileProc(callbacks->asfile, npp, &mNPStream, fileName), lib);  NPP_PLUGIN_LOG(PLUGIN_LOG_NORMAL, ("NPP StreamAsFile called: this=%p, npp=%p, url=%s, file=%s\n", this, npp, mNPStream.url, fileName));  return NS_OK;
ns4xPluginStreamListener::OnFileAvailable(nsIPluginStreamInfo* pluginInfo, const char* fileName){    const NPPluginFuncs *callbacks;    NPP                 npp;    pluginInfo->GetURL(&mNPStream.url);    mInst->GetCallbacks(&callbacks);    mInst->GetNPP(&npp);    if (callbacks->asfile == NULL)        return NS_OK;#if !TARGET_CARBON// pinkerton// relies on routine descriptors, not present in carbon. We need to fix this.    CallNPP_StreamAsFileProc(callbacks->asfile,                             npp,                             &mNPStream,                             fileName);#endif     return NS_OK;}