diff options
author | ananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-27 05:16:03 +0000 |
---|---|---|
committer | ananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-08-27 05:16:03 +0000 |
commit | dca3212a3573dc555bf64db9354911f0e77875c4 (patch) | |
tree | a34c689c21095bce46c279d72e421bc4e89ab28f /net/disk_cache/mem_entry_impl.cc | |
parent | 7dfd01fa421b487ac334ce02f00832197e4b94d6 (diff) | |
download | chromium_src-dca3212a3573dc555bf64db9354911f0e77875c4.zip chromium_src-dca3212a3573dc555bf64db9354911f0e77875c4.tar.gz chromium_src-dca3212a3573dc555bf64db9354911f0e77875c4.tar.bz2 |
Fixes a crash caused due to a call to NPP_DestroyStream occuring in the context of NPP_NewStream.
The plugin would invoke NPN_Evaluate to display an alert in the context of NewStream. This would cause the didFail IPC to be dispatched which would cause the plugin to invoke another call to NPP_NewStream which would repeat these steps and crash.
The didFail call from the renderer did not honor the deferred load flag which we set in WebPluginImpl
prior to dispatching stream IPCs to the plugin.
Fix is to dispatch the didFail call when we receive an ack from the plugin indicating that it is ready to accept stream data.
This fixes bug http://code.google.com/p/chromium/issues/detail?id=20063
The other change is in WebPluginImpl::TearDownPluginInstance, where we run through the list of resource
clients and cancel them. We call didFail on these clients here, which occurs anyway through the PluginDestroyed
code path.
Bug=20063
Test=Convered by interactive UI test.
Review URL: http://codereview.chromium.org/174383
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24593 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/disk_cache/mem_entry_impl.cc')
0 files changed, 0 insertions, 0 deletions