r=av bug=52963 Tested on win32. Tested to build on win32 and solaris. This patch fixes bug 52963, bug 52965, and bug 52973. This patch contributed by Stanley Ho <stanley.ho@eng.sun.com> 52963: nsIPluginStreamListener::OnStartBinding isn't always called: Added new ivar, mStartBinding: * Set to PR_TRUE after nsIPluginInstancePeer::OnStartBinding() has * been called. Checked in ::OnStopRequest so we can call the * plugin's OnStartBinding if, for some reason, it has not already * been called. 52965: Length isn't always set: rv = channel->GetContentLength(&length); // it's possible for the server to not send a Content-Length. We should // still work in this case. if (NS_FAILED(rv)) { mPluginStreamInfo->SetLength(-1); } else { mPluginStreamInfo->SetLength(length); } 52973: nsIHTTPHeaderListener called before nsIPluginStreamListener::NewStream This fix required rolling back Andrei Volkov's change to the signature of nsPluginStreamListenerPeer::SetUpStreamListener(). In order to call the plugin with the headers before the NewStream is sent, we need the nsIChannel. files in this fix: M modules/plugin/nglsrc/nsPluginHostImpl.cpp git-svn-id: svn://10.0.0.236/trunk@79618 18797224-902f-48f8-a5cc-f745e15eee43
99 KiB
99 KiB