Commit Graph

34 Commits

Author SHA1 Message Date
Benjamin Smedberg
a4fed8e791 Defer the PluginCrashed notification so that we don't delete the PluginModuleParent while we're in the middle of a crash notification. 2009-12-04 21:20:06 -05:00
Benjamin Smedberg
6a16aa24be Partly fix test bustage from bug 532751: set mShutdown before notifying the nsNPAPIPlugin, so that it doesn't re-enter IPC methods. 2009-12-04 18:41:56 -05:00
Benjamin Smedberg
0df75eeb7d Bug 532751 - Stop cacheing the nsNPAPIPlugin when it crashes, so that refreshing the page immediately reloads the plugin, r=bent pending r?joshmoz 2009-12-04 13:24:57 -05:00
Benjamin Smedberg
6210cf42fe Bug 532671 - After a plugin crashes, the module entry points (most importantly NPP_New) should fail, r=bent 2009-12-03 15:31:52 -05:00
Benjamin Smedberg
16d27267ec When the plugin crashes, set NPP->pdata to NULL, and null-check NPP->pdata in the callbacks that matter. r=bent 2009-12-03 15:31:01 -05:00
Chris Jones
2a7a132a2b bug 529005: detect child process shutdowns vs. crashes, and expose this information to IPDL actors in a new |ActorDestroy(why)| interface. also ensure that subprotocol actors are notified of shutdown and cleaned up properly. r=bsmedberg r=bent 2009-12-03 02:16:28 -06:00
Chris Jones
f40a90e249 bug 525342: make IPDL dtors part of the destructed actor's protocol instead of the manager's. r=bsmedberg 2009-12-03 02:16:14 -06:00
Ben Turner
14329334c4 Bug 526401 - Fixup handling of null NPP. r=bsmedberg. 2009-12-01 13:27:13 -08:00
Benjamin Smedberg
ba306d0e83 Don't crash if NP_Initialize failed remotely: PluginLibrary::NP_Initialize returns an nsresult, not a NPError; nsNPAPIPlugin::CreatePlugin fails but still sets the outparam; nsPluginHost doesn't properly rv-check nsNPAPIPlugin::CreatePlugin, which causes us to think the bad plugin is actually good. I hate stupid failure chains! 2009-11-20 10:34:20 -05:00
Chris Jones
4d41aed930 bug 530007: fix crashing edge cases in the hope of getting better diagnostics about failed tests 2009-11-20 02:23:07 -06:00
Ben Turner
66f926d979 Fix bad allocation pattern in NPP_New 2009-11-19 14:47:09 -08:00
Phineas T. Farnsworth
a68c9db0fe bug 526626: band-aids for shutdown assertions 2009-11-09 16:56:55 -06:00
Chris Jones
0a72a4ca4e bug 525792: fix leaking PluginModules, call NP_Shutdown() on plugins. minor, no r= 2009-11-03 15:37:07 -06:00
Chris Jones
48b3bff0d1 bug 523761: give top-level IPDL actors handles to each others' processes. r=bent 2009-10-27 16:52:37 -05:00
Josh Aas
040aa562c3 Allow multiple types of OOP plugins to load. b=516509 r=cjones 2009-10-27 15:51:12 -04:00
Chris Jones
d7c466bc04 implement NPN_UserAgent, which was trickier than expected 2009-10-08 02:54:16 -05:00
Chris Jones
450d458d36 fix some simple crasher bugs 2009-10-08 00:49:30 -05:00
Ben Turner
d420066bce Bug 516524 - Support NPRuntime across processes. r=bsmedberg. 2009-10-07 16:50:48 -07:00
Ben Turner
92debf1834 Finish up child-side NPRuntime. Now plugin-provided NPObjects should be totally supported. Browser-provided objects still unsupported. 2009-09-23 00:12:52 -07:00
Benjamin Smedberg
441b6d767b Fix streams to work. Be consistent about AStream* for pdata/ndata. Set up pdata before actually calling the constructor. Implement functions which were stubbed out without TODO comments. This passes the stream tests! 2009-09-22 17:06:00 -04:00
Chris Jones
4e37ff3dba bug 517977: require actor impls to override AllocPFoo/DeallocPFoo instead of PFooConstructor/PFooDestructor 2009-09-22 12:31:11 -05:00
Benjamin Smedberg
0ada5aafda Implement Plugin->Browser streams. In a very basic form the first plugin instantiation passes the new plugin stream tests, but subsequent instantiations don't: I think there's some shutdown/startup issue (the plugin is being unloaded, perhaps?) 2009-09-21 10:51:35 -04:00
Ben Turner
dc77c2acf6 More nsresult -> bool fixes, and fix windows bustage from NPEvent stub impl. 2009-09-19 12:24:24 -07:00
Chris Jones
99ef7cd149 fix more bustage related to nsresult-to-bool switch. committing initial (untested!) NPEvent forwarding caught in the crossfire 2009-09-18 20:19:11 -05:00
Chris Jones
fadfa9346e fix changes that busted ipc-test plugin 2009-09-17 20:49:04 -05:00
Chris Jones
0f1302af7c switch message handler nsresult return types to bool. appears to break test plugin, will be temporary 2009-09-17 18:09:20 -05:00
Ben Turner
9f39208500 Landing the first part of NPRuntime support for plugin-side objects. Not hooked up yet. 2009-09-17 15:15:12 -07:00
Ben Turner
63146a834d Further fixes for unions 2009-09-14 19:26:17 -07:00
Ben Turner
83292c1dc6 Add support for NPIdentifiers to oop plugins 2009-09-14 13:01:31 -07:00
Benjamin Smedberg
59d5b148be The functions which accept a NPP instance parameter don't need the special shim: just make them static functions on PluginModuleParent. This leaves only the following functions which will need special treatment in the Mozilla plugin host:
* NP_Initialize
* NP_GetEntryPoints
* NP_Shutdown
* NP_GetPluginVersion
* NP_GetValue
* NPP_New
* NP_GetMIMEDescription
2009-09-14 14:56:23 -04:00
Chris Jones
920904d7c4 add discriminated union types to IPDL 2009-09-10 23:55:03 -05:00
Ben Turner
df5a61685f Remove 'Protocol' suffix from IPDL-generated files 2009-09-09 15:59:06 -07:00
Benjamin Smedberg
88ab080bb4 PPluginStream is badly named: there is going to be a PPluginStream, but it's not this! 2009-09-09 10:04:09 -04:00
Ben Turner
466196efb0 Rename plugin protocols and fix up usage 2009-09-08 23:31:35 -07:00