Closed Bug 7507 Opened 26 years ago Closed 26 years ago

Reloading 4.x plug-in that uses SDK C++ framework crashes

Categories

(Core Graveyard :: Plug-ins, defect, P3)

x86
Windows NT
defect

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: cohn, Assigned: amusil)

Details

nsPluginHostImpl::FindStoppedPluginForURL finds a stopped plug-in and calls SetWindow on it. However, if a 4.x plug-in was stopped (by [layout/html/base/src/nsObjectFrame.cpp] nsPluginInstanceOwner::~nsPluginInstanceOwner), ns4xPluginInstance::Stop gets called which actually calls Destroy. In the plug-in SDK C++ framework, Destroy deletes the CNetscapePlugin object which SetWindow uses. So when SetWindow gets called by FindStoppedPluginForURL, it dereferences the deleted CNetscapePlugin object.
Status: NEW → RESOLVED
Closed: 26 years ago
Resolution: --- → FIXED
Fixed 6.4.99. Added check in ns4xPluginInstance.cpp to make sure that the 4x plugin has been started before calling SetWindow.
Works for my plug-in now.
Status: RESOLVED → VERIFIED
based on cohn@adobe.com comment, marking bug verified
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.