Commit Graph

376 Commits

Author SHA1 Message Date
Ben Turner
95882b79e1 Bug 547359 - '[OOPP] Silverlight plugin takes 6X longer to load with IPC plugins than without - make NPIdentifier handler smarter/faster'. r=bsmedberg. 2010-03-23 07:30:51 -07:00
Jim Mathies
a149cb14ad Bug 545149 - Fix various issues with winless plugin context menus. r=bent. 2010-03-22 22:06:35 -05:00
Chris Jones
42f30e5822 Bug 549888: Have the browser win NPP_SetWindow races, and add a special-cased NPP_HandleEvent async WindowPosChanged message for windows. r=jimm,karlt 2010-03-22 17:35:15 -05:00
Chris Jones
ecaab71939 Backed out changeset bda8efa53512 2010-03-18 21:01:10 -05:00
Chris Jones
a9301cdf81 Bug 551392: Remove hack made unnecessary by unified build tiers. r=ted 2010-03-18 17:52:38 -05:00
Chris Jones
d7b8ead1aa Bug 551392: Remove subprocess minidumps after they're grabbed to avoid spurious crash detection. r=ted 2010-03-18 17:52:36 -05:00
Chris Jones
c35e59ba1c Bug 552866: Don't run NotifyPluginCrashed from a nested context. r=bsmedberg 2010-03-18 17:52:35 -05:00
Josh Aas
09fc21cbeb Allow Gecko to build and run on Mac OS X with MOZ_IPC defined. b=552862 r=cjones 2010-03-17 14:38:28 -04:00
Josh Aas
c953e77bdc Fix incorrect type usage for NPP_SetValue NPNVprivateModeBool. b=544158 r=karlt 2010-03-17 13:17:09 -04:00
Jim Mathies
4734d89b66 Bug 546766 - Don't trust plugin return values for getvalue calls. r=bsmedberg. 2010-03-13 17:57:53 -06:00
Chris Jones
3775fecc82 b=550026 Cancel PluginCrashed when PluginModule is deleted. r=bsmedberg 2010-03-08 09:16:02 +13:00
Benjamin Smedberg
1dcd610135 Followup to bug 551049 - make the closing reason match that used by the in-process host 2010-03-11 14:15:48 -05:00
Benjamin Smedberg
e5aab11778 Merge and review fixup from async streams, bug 551049 2010-03-11 11:56:35 -05:00
Benjamin Smedberg
1a54d18a03 Bug 551049 part 3: delay the delivery of NPP_URLNotify until the related stream is completely delivered and destroyed, and propagate errors from NPP_Write and NPN_DestroyStream back to NPP_URLNotify r=bent 2010-03-06 16:03:05 -05:00
Benjamin Smedberg
51a11b0266 Bug 551049 (was bug 532208) part 2 - Delay delivery of NPP_DestroyStream until stream data is delivered, and make sure that data delivery doesn't re-enter, r=bent 2010-03-06 16:02:31 -05:00
Benjamin Smedberg
39df629db6 Bug 551049 (was bug 532208) part 1 - Make PBrowserStream destructor uni-directional by delivering all data asynchronously and doing two-phase (acknowledged) destruction, r=bent 2010-02-23 16:45:00 -05:00
Benjamin Smedberg
1fc1bc4a5a Revert the RPC-style race resolution from bug 532208 in order to use the asynchronous delivery patches. 2010-03-06 11:08:19 -05:00
Benjamin Smedberg
3ec1519e77 Bug 551387 - octoshape plugin crashes because it doesn't implement NPNFunctions.setwindow, r=bent 2010-03-10 10:54:22 -05:00
Chris Jones
7fd74b1a80 Merge backout 2010-03-11 05:07:51 -06:00
Chris Jones
415f85da1a Backing out bug 550026 due to orange 2010-03-11 05:07:42 -06:00
Chris Jones
ad34b8295e Followup to bug 549888: don't call HandleEvent after Paint 2010-03-11 04:13:23 -06:00
Chris Jones
7e203b6454 Bug 549888: Part 2: Add a Paint() message and have the browser win races of Paint() vs. anything else. r=bent,jmathies,karlt 2010-03-11 01:35:31 -06:00
Chris Jones
a3aa9cbbff Bug 550118: Try to not process XPCOM events when a plugin process spins a nested glib event loop. r=karlt 2010-03-11 01:35:29 -06:00
Chris Jones
148296d96a b=550026 Don't call PluginCrashed while plugin code is still on the stack r=bsmedberg 2010-03-08 09:16:02 +13:00
Jim Mathies
2afcaf5c1d Bug 550322 - [OOPP] Hulu full screen deadlock protection doesn't trap all cases. r=bent. 2010-03-06 12:33:40 -06:00
Benjamin Smedberg
a87ccb8301 Bug 550305 - Reduce round-trips by making some NPRuntime/scriptable methods async instead of RPC, r=bent 2010-03-04 16:20:14 -05:00
Chris Jones
568776b2d0 Bug 532208: Defer deletion of browser streams to later tasks. r=bsmedberg 2010-02-26 13:07:56 -06:00
Ben Turner
7aae9fc552 Fix braindead variant conversion bug, r=cjones, no bug 2010-02-25 15:31:09 -08:00
Karl Tomlinson
f125b837c1 b=548434 NULL check aNPP in _invalidaterect for nspluginwrapper r=cjones
--HG--
extra : rebase_source : 6af217c167b313f034461ec63d7dd45cb5bd5225
2010-02-24 16:19:51 -08:00
Benjamin Smedberg
435bf321ac Merge backout of bug 532208 due to test failures, crashes, and overall badness. 2010-02-25 03:03:12 -08:00
Benjamin Smedberg
a97d6cd2b0 Backed out changeset e4a7ea0bb90f bug 532208 - asynchronous stream delivery because write events were being dispatched in odd re-entrant states and NPP_DestroyStream was being delivered before all the stream data was delivered. 2010-02-25 03:00:56 -08:00
Karl Tomlinson
6ed1f5d145 b=517133 Get crash stats for X errors r=bsmedberg
--HG--
extra : rebase_source : e9b2319a566ecb5a8a3cd6ba322df97e1ff3ffc8
2010-02-24 14:25:16 -08:00
Benjamin Smedberg
0d781c505c Bug 532208 - Make PBrowserStream destructor uni-directional by delivering all data asynchronously and doing two-phase (acknowledged) destruction, r=bent
--HG--
extra : rebase_source : 1155cb3c0d548712b274c81e7cf597eaf091d220
2010-02-23 16:45:00 -05:00
Jim Mathies
5dc5015ef8 Bug 547353 - [OOPP] Mouse pointer coordinates misaligned with winless Silverlight. r=bent. 2010-02-24 16:13:48 -08:00
Chris Jones
06871df7a3 Bug 544945, part 2: Periodically unblock the parent to allow it to process events while the plugin subprocess is in a nested event loop. r=karlt
--HG--
extra : rebase_source : bf9a2df9d7d6b420fb93d11dc5abaeb4be1214db
2010-02-16 12:44:25 -06:00
Chris Jones
eb662c9fe6 Bug 544945, part 1: Detect nested glib event loops in the plugin subprocess. r=karlt
--HG--
extra : rebase_source : 454553501de351b66e328a7005e6779088f2a2fa
2010-02-16 12:44:24 -06:00
Benjamin Smedberg
cdf15ace3b Bug 544074 - Crashes at mozilla::plugins::PluginModuleChild::UnregisterActorForNPObject - the hash of scriptable objects is mutating while we enumerate the actors being destroyed after a plugin instance is destroyed. Save the list of actors off into a separate non-mutating table, r=bent 2010-02-24 16:14:13 -05:00
Benjamin Smedberg
a884a24043 Bug 547894 - Allow null in NPN_GetStringIdentifier(s) to fix a topcrash with the divx plugin, r=bent 2010-02-24 16:34:17 -05:00
Benjamin Smedberg
3b1352e4df Bug 547316 - Plugin window subclass is not reset when CallNPP_Destroy fails, r=bent 2010-02-19 17:08:16 -05:00
Jim Mathies
81e27fafd9 Bug 547142 - [OOPP] Exiting full-screen video locks the browser. r=bent. 2010-02-22 17:10:08 -08:00
Jim Mathies
9bd29b8510 Bug 547276 - [OOPP] Windowed focus hang in CallHasProperty. r=bent. 2010-02-22 17:09:27 -08:00
Ben Turner
236e97e5cd Bug 535017 - 'IPC plugins should cache well-known scriptable objects to avoid unnecessary actor creation/destruction'. r=bsmedberg. 2010-02-20 13:59:40 -08:00
Jim Mathies
0be9704540 Bug 545239 - [OOPP] Plugin focus: hang at PPluginInstanceParent::CallSetPluginFocus against child _NtUserSetFocus. r=bsmedberg. 2010-02-18 14:21:21 -06:00
Jim Mathies
094bf7e9a3 Bug 543201 - [OOPP] Shockwave window position is not correct. r=bent. 2010-02-18 14:20:25 -06:00
Jim Mathies
f2cf287e8d Bug 539658 - [OOPP] Full-screen mode doesn't work with windowless controls (hulu). r=bent. 2010-02-18 14:19:28 -06:00
Benjamin Smedberg
d2d3fb64c4 Bug 542263 for real! Deallocate shouldn't invalidate plugin scriptable objects because they may be resurrected. This supposedly landed in mozilla-central revision 4c6d4be91aaa but that was an empty revision, probably due to some transplant error. r=bent
--HG--
extra : rebase_source : da3efd3d0e602194d8741d0623a885566e798e28
2010-02-17 13:30:27 -05:00
Karl Tomlinson
a4cd333dde b=543901 only call NPPluginFuncs::getvalue when non-NULL and remove NPP_GetValue NPPVpluginWindowBool NPPVpluginTransparentBool r=cjones 2010-02-04 13:02:48 +13:00
Chris Jones
0d8fcde12f Fix windows build
--HG--
extra : transplant_source : %A6%8C%E4k%A8%91%A8%F0%E7n%8D%DC%29eV%BB%9B%85q%CD
2010-02-11 15:22:44 -06:00
Chris Jones
c3c2e2f00c Bug 544345: Kill plugins if they exceed the hang timeout. r=bsmedberg
--HG--
extra : transplant_source : K%BBb%8Dq%C8%26O%7Cj%10%0B%EE%05j%3C%0F%CA%C3%3A
2010-02-11 14:32:18 -06:00
Chris Jones
592ad302a1 Log "schlepping drawable" messages as PLUGIN_LOG_DEBUG. no r=, trivial
--HG--
extra : transplant_source : %10%9E-%8B%09%5D2%F6%97%C0k%0E%08%20%A1%1C%1B%B1%23z
2010-02-10 17:17:33 -06:00
Jim Mathies
c877b84ecc Bug 538918 - [OOPP] Modal system dialogs cause UI freeze w/windowless controls. r=bent, cjones.
--HG--
extra : transplant_source : %28B%08h%F29L%BE%BBEh%E8%92%22%2A%8E%A8%00F%83
2010-02-09 16:34:38 -06:00
Oleg Romashin
afd6f98795 bug 544193 - Qt version for plugins embedding functionality required. r=mozbugz. 2010-02-10 22:48:20 +02:00
Ted Mielczarek
d40733d453 Bug 541076 - add minidump id and plugin name to PluginCrashed event. p=ted+dolske, r=jst, r=ted 2010-02-09 17:05:31 -08:00
Jim Mathies
b32f193a8c Bug 542897 - [OOPP] Random sized black boxes appear/disappear in silverlight content areas. r=bsmedberg. 2010-02-08 13:35:37 -06:00
Jim Mathies
3391f48d52 Bug 543831 - [OOPP] Hang with embedded youtube video. r=bent. 2010-02-04 14:32:02 -06:00
Benjamin Smedberg
d2f5cee6ad Bug 535120 - NPN_GetValue(NPNVToolkit) doesn't work with null npp, r=bent
--HG--
extra : rebase_source : 67d03285f34260c02c49579ef8ff664e04bc4a84
2010-02-03 17:17:41 -05:00
Benjamin Smedberg
16f9bfea5a Bug 541646 - Crash when Flash is running and we enter private browsing mode, r=bent
--HG--
extra : rebase_source : 5f6d75689cf70f6c7bdd578da0021287bfe22737
2010-02-03 17:17:28 -05:00
Benjamin Smedberg
30bd4e4e51 Bug 516515 - Don't initialize XPCOM in plugin processes, r=cjones
--HG--
extra : rebase_source : cab356b862a66fb7f5955b1f936944f2395bba3c
2010-02-03 17:17:09 -05:00
Benjamin Smedberg
9eb44973ee Work around bug 543776 by submitting empty PluginName/PluginVersion in crash reports.
--HG--
extra : rebase_source : d3ea07dc9edbb1295aeb815b47316a9ad1423026
2010-02-03 09:36:45 -05:00
Daniel Holbert
aaaa0e4b10 Backed out changeset c502a1a0900a (patch for bug 542263), since its test 'test_GCrace.html' failed on OSX in its first cycle. 2010-02-02 18:58:35 -08:00
Benjamin Smedberg
1f00a8ee4a Bug 542263 - Deallocating a scriptable object shouldn't cause us to mark the actor as invalidated. If the object is resurrected by a racing call from the other side, simply create a new NPObject on this side to represent the actor (Crash at NPObjWrapper_NewResolve with Silverlight), r=bent 2010-02-02 17:18:39 -08:00
Chris Jones
1587357bc7 Bug 535612: Set GDK_NATIVE_WINDOWS in plugin processes to work around plugins that don't interact well with client-side GDK windows. r=karlt r=roc 2010-02-02 00:28:28 -06:00
Josh Aas
4a93f5fe9f Clean up a bunch of things in nsNPAPIPlugin. b=543339 2010-01-31 16:41:26 -05:00
Daniel Holbert
32a1fb0c00 Bug 542959: Add 'const' to NP_GetMIMEDescription's parameter, to fix "deprecated conversion from string constant to ‘char*’" warning. r=cjones 2010-01-29 12:18:50 -08:00
Chris Jones
bab3961fbc Prevent |ChildAsyncCallback|s from touching freed |PluginInstanceChild|s if NPP_Destroy() re-enters or races with the callback. r=bsmedberg 2010-01-29 13:24:11 -06:00
Oleg Romashin
959dec8b52 Bug 534644 - e10s: implement Qt ipc/chromium backend, part 2. r=benjamin. 2010-01-29 08:50:44 +02:00
Oleg Romashin
2d419b5929 Bug 534644 - implement Qt ipc/chromium backend, first part. r=benjamin, r=jones.chris.g 2010-01-28 07:22:41 +02:00
Jim Mathies
b78761c01e Bug 542616 - [OOPP] Use ActorDestroy to cleanup PluginInstanceParent resources and subclass after the child crash. r=bent. 2010-01-27 18:01:44 -06:00
Ben Turner
1e94a6bac2 Bug 542337 - '[OOPP] hang in test_plugin_clipping2.xhtml'. r=jimm.
--HG--
extra : rebase_source : 22b97f9252c02f7343d12b60fa9cd93cfbe12a25
2010-01-26 16:08:39 -08:00
Jim Mathies
877cceccfa Bug 541362 - [OOPP] hang closing tab with Yahoo web messenger loaded. r=bent.
--HG--
extra : rebase_source : 007df4403cc58cb02579723991827795e031f6bd
2010-01-26 15:40:43 -06:00
Jim Mathies
757c1b3d63 Bug 540052 - [OOPP] Test failure in test_plugin_focus.html. r=bent.
--HG--
extra : rebase_source : bdb40f27e098519ecd71abd75a80e8e612f888f8
2010-01-26 15:40:15 -06:00
Benjamin Smedberg
226e0ab87f Bug 540604 - silverlight doesn't work with OOPP because it doesn't set the stype outparam for NPP_NewStream, and relies on us initializing the value with NP_NORMAL, r=cjones
--HG--
extra : rebase_source : 935580b2825b335be5a0183a79806f29f6ce404f
2010-01-26 12:05:54 -05:00
Benjamin Smedberg
25d837343c Bug 540868 part 3: when deallocating NPObjects in leakcount builds, let the leak monitor know that we cleaned them up correctly, r=bent
--HG--
extra : transplant_source : H%AC%29%DF8y%E8f%F1%2B%3B%5C%A3Z%10%D1R%7E%CC%10
2010-01-22 10:06:30 -05:00
Benjamin Smedberg
8adba8c2a2 Bug 540868 part 2: keep all NPObjects (not just those with actors) in mObjectMap, and invalidate/deallocate them when we destroy the associated instance, r=bent
--HG--
extra : transplant_source : %96H%CA%BF%2BX%18s%C8%1B%2Bh%8F%92%05%F0%9F/N%01
2010-01-22 10:06:13 -05:00
Benjamin Smedberg
6f7867ca0f Bug 540858 part I: separate the refcount logging of NPObject (which works for both plugin and proxy NPObject) from ctor/dtor logging of ChildNPObject (proxy only), r=bent
--HG--
extra : transplant_source : %16%16%92s%8C%B1%AC%8AT%23%DF%DD%A0%B7RH%84C%A7%3A
2010-01-22 10:05:29 -05:00
Benjamin Smedberg
2208ae6e97 Stupid logic error from bug 539755
--HG--
extra : transplant_source : %B6%D5%DA%DA%29%06h%82%EBl%00%F7t%93%AA%C3_26%D3
2010-01-21 14:35:00 -05:00
Ted Mielczarek
f3680d3c32 bug 539552 - make PluginModuleParent write out more data to .extra file. r=bsmedberg
--HG--
extra : transplant_source : %C1P%99%80%8E%2C%92%7B%8C%BF%40c%40%FD%18%1F%AE%0E%D8%D9
2010-01-13 20:20:00 -05:00
Benjamin Smedberg
a99d2bc8fe Bug 540775 - Implement NPP_SetValue(NPNVprivateModeBool), r=cjones
--HG--
extra : transplant_source : %C7T%9D%9E%A5%E8%B5HP%D8%DD%28%C6%C5%5E%9CS%9C%20%80
2010-01-19 22:23:35 -05:00
Benjamin Smedberg
70135d7c9f Bug 540776 - Initialize NPRuntime scriptable result variants the same way the Mozilla plugin host does, r=cjones
--HG--
extra : transplant_source : x_%F3W%2A%F5%83%C5%BE%08V%81%D7%40%BF%12%0B%BF%DF%A0
2010-01-19 22:23:32 -05:00
Benjamin Smedberg
2bb6aa26c4 Bug 518924 - NPN_ScheduleTimer, and clean up asynccalls when the plugin instance is destroyed, r=cjones
--HG--
extra : transplant_source : %C8%97/%8E%1C%A4%89%26%98%C1%01u%8F%B2m%91%F8%F4%B7M
2010-01-19 22:13:24 -05:00
Karl Tomlinson
a753e3901b Bug 539897: Add missing socket_window reference due to GtkPlug bug. r=cjones
--HG--
extra : transplant_source : %D0%91%8Eoa%1F%00JDF%7Cj%AB%9A%C8%06%E13%E37
2010-01-19 15:45:56 -06:00
Karl Tomlinson
8b4c05501b Bug 538914: Undo incorrect unref of GtkPlug by plugin. r=roc r=cjones
--HG--
extra : transplant_source : sdX%A6%286%AD%29%DC%CE%BB%E5X%F4B%A3_d%A6N
2010-01-19 15:45:54 -06:00
Benjamin Smedberg
8cf3963e32 Bug 539755 - Implement NPN_GetValueForURL, NPN_SetValueForURL, and NPN_GetAuthenticationInfo, r=bent 2010-01-15 11:26:46 -05:00
Benjamin Smedberg
2324becd51 Bug 521377 build-bustage followup: make template instantiations available inline, r=bent
--HG--
rename : dom/plugins/PluginScriptableObjectUtils.cpp => dom/plugins/PluginScriptableObjectUtils-inl.h
extra : transplant_source : %18%D0%7BP%40v%CF%89%9B%D3%27i%B9%E3d%A4%ACgf%3F
2010-01-15 16:52:13 -05:00
Ben Turner
471d1a3e1b Bug 521377 - 'NPRuntime: Segfault when NPP_GetValue_NPPVpluginScriptableNPObject returns a null actor'. r=bsmedberg+valgrind.
--HG--
extra : transplant_source : %F8%7C%B6%C49%24%9A%E0%96%EA%10%E9%C7%C0%EF%EA%D6%7FT%9A
2010-01-15 12:35:57 -08:00
Benjamin Smedberg
51181a42aa Bug 539280 - Add support for NPNVnetscapeWindow query on Linux, r=karlt 2010-01-14 10:18:34 -05:00
Peter Van der Beken
076d23ead6 Backout 76cdc8296409 and 9baa220b27c0 (Bug 521377 - 'NPRuntime: Segfault when NPP_GetValue_NPPVpluginScriptableNPObject returns a null actor') to try fo fix orange. 2010-01-19 13:00:58 +01:00
Benjamin Smedberg
758ab615e5 Bug 521377 build-bustage followup: make template instantiations available inline, r=bent
--HG--
rename : dom/plugins/PluginScriptableObjectUtils.cpp => dom/plugins/PluginScriptableObjectUtils-inl.h
2010-01-15 16:52:13 -05:00
Ben Turner
37ff4409a5 Bug 521377 - 'NPRuntime: Segfault when NPP_GetValue_NPPVpluginScriptableNPObject returns a null actor'. r=bsmedberg+valgrind. 2010-01-15 12:35:57 -08:00
Jim Mathies
938c329d54 Bug 536369 - OOPP: Add NPNVnetscapeWindow support for windows. r=bsmedberg. 2010-01-13 19:47:38 -06:00
Jim Mathies
3960d009a6 Bug 536369 - OOPP: Fix for mouse event serialization errors. r=bsmedberg. 2010-01-13 19:46:44 -06:00
Chris Jones
709ae3ce2b Bug 538537: Guard BrowserStreams from being deleted from within their constructor. r=bsmedberg 2010-01-12 17:06:18 -06:00
Benjamin Smedberg
84db3ddf86 Bug 531859 - Remove stdout spew from dom/plugins by using NSPR logging, r=cjones
--HG--
extra : transplant_source : fW%F0%06%1F%88%2C%F3l%B3%A0%F7b%D0%13%AE%D7%BD-%26
2009-12-18 17:22:51 -05:00
Benjamin Smedberg
dc4191cad2 Bug 536437 - work around a bug in the Mozilla plugin host where NPN_GetURLNotify can return an error and also call NPP_URLNotify, r=cjones
--HG--
extra : transplant_source : %07%7B%DBO%AF%069%16%F5%FF%1A%C5%F5Wi%E1%9D%E1%E6%83
2010-01-05 12:12:30 -05:00
Jim Mathies
7ce165ba93 Bug 539020 - OOPP: mouse events get duped. r=bsmedberg. 2010-01-11 12:53:08 -06:00
Chris Jones
fc78df75e6 Fix windows bustage caused by 04d6f128da25 2010-01-04 16:41:34 -06:00
Chris Jones
a20ac7326a Bug 535687: Fix regression in forwarding NPN_InvalidateRect() for OOPP on linux. r=bent 2010-01-04 15:46:34 -06:00
Walter Meinl
086f519b38 Bug 536264 - "[OS/2] build break in modules\plugins" [r=josh] 2009-12-23 15:12:00 -06:00
Chris Jones
cb0d649a87 bug 535073: prevent plugins from corrupting the stack by making word-size stores to pointers to NPBool (unsigned char). r=bsmedberg 2009-12-17 00:32:44 -06:00
Benjamin Smedberg
4164f7bfc5 Bug 518924 - Implement NPN_AsyncCallback r=cjones 2009-12-16 17:27:18 -05:00
Benjamin Smedberg
e9b0ccabad Bug 532751 - Notify the nsNPAPIPlugin and the related nsNPAPIPluginInstances when a plugin crashes so that reloading will create a new plugin process, r=josh 2009-12-16 15:08:45 -05:00
Chris Jones
b91d7c23b6 bug 534863: the plugin DLL path needs to be quoted on windows. irc r=bent 2009-12-15 17:10:41 -06:00
Benjamin Smedberg
2010a569bb Merge mozilla-central into electrolysis. 2009-12-14 21:27:17 -05:00
Jim Mathies
1ea63e49c6 Bug 534027 - input event coords incorrect for oop windowless plugins. r=jmuizelaar. 2009-12-14 18:28:51 -06:00
Jim Mathies
23118539a9 Bug 531860 - plugin-alpha-zindex ref test fails with oopp enabled. r=jmuizelaar. 2009-12-14 18:27:25 -06:00
Benjamin Smedberg
b7d1d5c7ba Followup to e10s landing (and back to bug 516509): on Mac, NP_GetMIMEDescription and NP_GetValue are optional entry points, because the metadata can be retrieved from the .plist file, r=josh
--HG--
extra : rebase_source : 0fc5db971736612606c66c20cc2f0a3cc62ca444
2009-12-14 16:19:25 -05:00
Ben Turner
6e20a64631 Backing out changesets ed8d3323a50d, 3930bbdffdd5, 36e32abd2cc8, f4bcfc703ff9, 21051d997076, and 49f489315dd9 at the request of bsmedberg. 2009-12-11 12:48:37 -08:00
Benjamin Smedberg
1c4aa9f2e3 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
5035b52067 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
c29bfd6d3d Bustage fix 2009-12-03 15:44:33 -05:00
Benjamin Smedberg
6e3d83cf38 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
c1afb3a76f Bug 532671 - After a plugin crashes, the module entry points (most importantly NPP_New) should fail, r=bent
--HG--
extra : rebase_source : 389d54e70fea2801d28bdf2e48740dcaaec31a07
2009-12-03 15:31:52 -05:00
Benjamin Smedberg
7fa499445d When the plugin crashes, set NPP->pdata to NULL, and null-check NPP->pdata in the callbacks that matter. r=bent
--HG--
extra : rebase_source : 32489b985b05b9da68546d37a2f0302bac8fd467
2009-12-03 15:31:01 -05:00
Benjamin Smedberg
f29a8b92d2 Bug 532659 - PluginScriptableObjectParent gets double-deleted when the plugin crashes, and fix the IPDL bug where we delete the actor if construction fails, instead of calling Deallocate on it, r=bent
--HG--
extra : rebase_source : dbe9a100735b1e0d0a8b07f4421e1ccb6055a78a
2009-12-03 15:30:05 -05:00
Ben Turner
998844d951 Fix bad invalidation bug in child NPObjects 2009-12-03 11:53:09 -08:00
Chris Jones
4572a1920a 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
4a0c6ae1dc 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
Chris Jones
f2a7be3825 bug 524220: add a |nullable| type qualifier denoting whether C++ actor params are allowed to be NULL. r=bent 2009-12-03 00:35:22 -06:00
Chris Jones
411500f1ca Build fix 2009-12-01 17:33:51 -06:00
Ben Turner
b17063546e Bug 526401 - Fixup handling of null NPP. r=bsmedberg. 2009-12-01 13:27:13 -08:00
Jim Mathies
0ffd1b2e75 Bug 522299 - Electrolysis: Get windowless plugins drawing on win32. r=jmuizelaar. 2009-12-01 15:05:26 -06:00
Benjamin Smedberg
96bcd263ae XXX removal: don't destroy the stream on failure (a future ActorDestroy callback will take care of that), and other shutdown- and crash-related XXX removal which are handled by bug 529005 2009-11-25 15:34:49 -05:00
Benjamin Smedberg
aa44111ad9 TODO-removal: make NullableStringGet an inline function instead of a macro, and make NullableString an inline function in mozilla::plugins instead of in an anonymous namespace: no need to have a separate copy of it for each translation unit. 2009-11-25 15:07:45 -05:00
Benjamin Smedberg
3815e2f045 More TODOs in the the plugin stream code, use the NullableString mechanisms which were invented after this landed. 2009-11-25 10:34:59 -05:00
Benjamin Smedberg
f7eb5c27ab Bug 530894 - Clean up TODOs in the plugin stream remoting: if NPN_{Get,Post}URLNotify fail, clean up the actor properly. Also deal with null postdata, which currently causes significant problems for the in-process case (NPN_PostURLNotify succeeds, but NPP_URLNotify is never called). r=bent 2009-11-25 09:26:01 -05:00
Benjamin Smedberg
bb315f002e Backed out changeset 97c456993dbd -- red herring, no need for this debugging spew. 2009-11-20 13:48:42 -05:00
Chris Jones
fe82937760 temporary debugging spew to check bug 529234 2009-11-20 11:54:46 -06:00
Benjamin Smedberg
bda0f732bc 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
9a696edbf3 bug 530007: fix crashing edge cases in the hope of getting better diagnostics about failed tests 2009-11-20 02:23:07 -06:00
Benjamin Smedberg
8f0adb5fe2 Don't use a static nsCString (causing leaks in the plugin process). Also, use NS_LogInit/NS_LogTerm for the child process so that leaks are reported at the right time. 2009-11-19 17:57:56 -05:00
Ben Turner
e9917531bc Fix bad allocation pattern in NPP_New 2009-11-19 14:47:09 -08:00
Ben Turner
b6ef9679ad Followup to bug 527876 2009-11-13 13:19:33 -08:00
Ben Turner
42c5c160d1 Bug 527876 - 'test_windowed_invalidate.html hangs during mochitest-ipcplugins'. 2009-11-13 12:20:03 -08:00
Chris Jones
64b9366a4d no need to include in C++ protocol-common headers |include protocol|'d from IPDL. this is an accident of history 2009-11-12 16:20:20 -06:00
Ben Turner
cafe07f11b Bug 525792 - 'Fix leaks running mochitests'. 2009-11-12 14:16:54 -08:00
Benjamin Smedberg
effd77def4 Don't rely on the plugin methods to return a non-null actor when the say NPERR_NO_ERROR... crashing here is a no-no even if the plugin is stupid. 2009-11-11 17:01:07 -05:00
Ben Turner
0a4603ecea Fix invalidation algorithm so that we never leave a deleted actor in the live hash map. 2009-11-11 17:12:01 -08:00
Chris Jones
5629855e23 mac builds and runs with --enable-ipc, but the subprocess nsAppShell dies for an apparently Cocoa-related reason. IPC is fine though 2009-11-10 20:25:10 -06:00
Ben Turner
401a6884be Fix silly bugs 2009-11-09 17:30:02 -08:00
Phineas T. Farnsworth
c1f7d557dc bug 526626: band-aids for shutdown assertions 2009-11-09 16:56:55 -06:00
Ben Turner
d1a97dd911 Bug 522414 - 'RPC and Sync channels will deadlock easily on Windows'. r=jimm+rs. 2009-11-06 14:33:12 -08:00
Chris Jones
721479dcd3 bug 523894: wstrings are bad news in OPT builds due to chromium/Mozilla -fshort-wchar mismatch 2009-11-05 18:24:27 -06:00
Chris Jones
f1358e3105 bug 525792: fix leaking PluginModules, call NP_Shutdown() on plugins. minor, no r= 2009-11-03 15:37:07 -06:00
Benjamin Smedberg
3367daa125 Remove stale TODO, this will be properly covered by parent-side error handling events. 2009-11-02 11:48:52 -05:00
Benjamin Smedberg
f0f56fb840 Linux build bustage from previous commit, bug 525605. 2009-10-31 15:32:06 -04:00
Benjamin Smedberg
c7b65d066d Bug 525605 - Windows unit tests orange loading plugins: on Windows, the directly-imported plugin functions are WINAPI, so we need to use careful typedefs to get the calling convention right. 2009-10-31 15:22:02 -04:00
Benjamin Smedberg
b0a9529f7f Bug 525454 - Crash in mochitest-ipcplugins where NPP_Invoke returns the last reference to an object. Also fixes an operator-precedence error. 2009-10-30 17:02:47 -04:00
Chris Jones
4f942a96f2 bug 523761: give top-level IPDL actors handles to each others' processes. r=bent 2009-10-27 16:52:37 -05:00
Chris Jones
db4d86c978 Make a DEBUG_cjones log message DEBUG 2009-10-27 16:07:49 -05:00
Benjamin Smedberg
1b97d8b940 Linux build bustage from bug 522122. 2009-10-27 16:59:40 -04:00
Jeff Muizelaar
31d0efb7ae Bug 522122. Electrolysis: Forawrd windows events to windowless plugins. r=cjones,karlt
This gets windowless plugin events mostly working. We don't forward IME events because
they are much more complicated.
2009-10-27 15:58:33 -04:00
Josh Aas
39b3aac40a Allow multiple types of OOP plugins to load. b=516509 r=cjones 2009-10-27 15:51:12 -04:00
Chris Jones
0564ad103d bug 523143: switch protocols using nsTArray to native IPDL arrays 2009-10-19 14:10:52 -05:00
Chris Jones
e1e761401a bug 506171: rewrite lower.py and add native IPDL arrays. 2009-10-16 18:31:53 -05:00
Ben Turner
927eca0769 Add NPN_Evaluate and NPN_Push/PopPopupsEnabledState support 2009-10-13 10:54:41 -07:00
Karl Tomlinson
3fa2368891 b=521376 remove XSynchronize from plugin process r=cjones 2009-10-12 12:54:49 +13:00
Chris Jones
952906a7a1 nsDependentCString must be null-terminated, but byte buffers do not. temporary fix until we start using a "real" byte buffer 2009-10-09 01:24:46 -05:00
Ben Turner
970c751691 Remove testplugin for ipc, we can run the real one now. 2009-10-08 14:40:51 -07:00
Ben Turner
dfe7dc6f40 Oops, revert bad changes 2009-10-08 12:23:04 -07:00
Ben Turner
d8f6fca3ab Add threadsafety assertions to plugin code 2009-10-08 12:11:13 -07:00
Ben Turner
f26ec904ef Oops, missed two 2009-10-08 11:45:20 -07:00
Ben Turner
366f27bdff Crash fixes, must initialize variants before returning true 2009-10-08 11:36:50 -07:00
Chris Jones
e163ed39df implement NPN_UserAgent, which was trickier than expected 2009-10-08 02:54:16 -05:00
Chris Jones
b67d0407f8 fix some simple crasher bugs 2009-10-08 00:49:30 -05:00
Ben Turner
80b478e8c5 Bug 516524 - Support NPRuntime across processes. r=bsmedberg. 2009-10-07 16:50:48 -07:00
Karl Tomlinson
1187b43b45 b=519896 NPN_InvalidateRect r=cjones 2009-10-01 17:09:21 +13:00
Karl Tomlinson
1ab026f529 b=519641 pass visual and colormap to plugin process r=cjones 2009-10-01 10:36:14 +13:00
Chris Jones
afed1a0211 update plugin process NPNetscapeFuncs interface (with stub impls) to the most recent NPAPI. 2009-09-29 13:50:11 -05:00
Chris Jones
0ae3b43203 fix stupid bug in deserialization of NPWindow. X11 windowless plugins now work. 2009-09-25 15:35:03 -05:00
Chris Jones
09dd02217f forward NPWindow.{x, y} properly. no windowless gfx yet, but closer. thanks=karlt 2009-09-25 11:16:44 -05:00
Chris Jones
0151e59e0a attempt to fix linux build 2009-09-25 00:17:29 -05:00
Chris Jones
22800f56d8 pre-fix windows bustage. thanks=bent 2009-09-24 21:14:41 -05:00
Chris Jones
0531f8f96b basic support for windowless X11 plugins. gfx not quite working yet 2009-09-24 21:03:59 -05:00
Benjamin Smedberg
7464979f8c More plugin crash fixes: failure from NPP_Write doesn't actually destroy the stream, it just tells the browser to destroy the stream. NPP_NewStream resulting from NPN_GetURLNotify didn't have the notifyData field set correctly. Other minor logging and cleanup.
--HG--
extra : rebase_source : 932c0290a7c1779275266607d5e853d5c1994396
2009-09-23 19:00:23 -04:00
Ben Turner
b4b02694d7 Bustage fix for linux 2009-09-23 00:48:28 -07:00
Ben Turner
fb65d976a0 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
3e1cc1bae2 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!
--HG--
extra : rebase_source : fb5dbbd43a1588efad83b80760b82f40ad1eff3f
2009-09-22 17:06:00 -04:00
Chris Jones
4c587f8e45 bug 517977: require actor impls to override AllocPFoo/DeallocPFoo instead of PFooConstructor/PFooDestructor 2009-09-22 12:31:11 -05:00
Chris Jones
d484a65e38 bug 517923: support serializing ns*Strings that represent NULL, use this mechanism in PluginInstanceParent/PluginModuleChild. also add basic crash-handling to *Channel code and some NS_OVERRIDE annotations. 2009-09-21 21:02:15 -05:00
Benjamin Smedberg
b64d353fd6 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
Benjamin Smedberg
b492f5cb54 __FUNCTION__ is not a preprocess macro: it is a symbol which ends up being a const char* for the current function. You can't concatenate it with other stuff. 2009-09-21 11:46:38 -04:00
Ben Turner
eb6738b7b5 More nsresult -> bool fixes, and fix windows bustage from NPEvent stub impl. 2009-09-19 12:24:24 -07:00
Chris Jones
fcd45719e6 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
Benjamin Smedberg
0b4ab180ee Fix up dom/plugins code for bug 516661 - no more nspluginsdefs.h! 2009-09-18 17:01:09 -04:00
Chris Jones
8c37ed70aa fix changes that busted ipc-test plugin 2009-09-17 20:49:04 -05:00
Chris Jones
03947f0bf3 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
5927a0e5fb Landing the first part of NPRuntime support for plugin-side objects. Not hooked up yet. 2009-09-17 15:15:12 -07:00
Benjamin Smedberg
b407807f12 Bug 517207 - Implement NPN_GetValue, r?bent. I use separate messages for each getvalue property instead of an integer/enumeration and a variant because for each message, the type returned is static: this avoids a lot of dynamic checking for correct enumeration values and variant types. r=bent 2009-09-15 16:33:24 -04:00
Benjamin Smedberg
16ebf43c77 Actually implement the geturl/posturl functions on the child-side plugin host. 2009-09-15 15:48:18 -04:00
Ben Turner
cce28b953f Further fixes for unions 2009-09-14 19:26:17 -07:00
Ben Turner
7c57ab02d5 Add simple tests for NPIdentifiers in testplugin 2009-09-14 15:35:02 -07:00
Ben Turner
d21caee81e Add support for NPIdentifiers to oop plugins 2009-09-14 13:01:31 -07:00
Benjamin Smedberg
3c02ab3b1b 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
Benjamin Smedberg
0c3c67bde3 Fix Windows build bustage from the NPN_GetURLNotify patch. 2009-09-11 13:52:53 -04:00
Benjamin Smedberg
79d7e994f0 Implement NPN_GetURLNotify/NPN_PostURLNotify/NPP_URLNotify. Still without any tests! 2009-09-08 17:22:50 -04:00
Chris Jones
e20692ab9b add discriminated union types to IPDL 2009-09-10 23:55:03 -05:00
Ben Turner
c6ad60ed4d Remove 'Protocol' suffix from IPDL-generated files 2009-09-09 15:59:06 -07:00
Ben Turner
dccb0805dd Rename remaining protocols
--HG--
rename : dom/ipc/ContentProcess.ipdl => dom/ipc/PContentProcess.ipdl
rename : dom/ipc/IFrameEmbedding.ipdl => dom/ipc/PIFrameEmbedding.ipdl
rename : ipc/test-harness/Test.ipdl => ipc/test-harness/PTest.ipdl
rename : ipc/testshell/TestShell.ipdl => ipc/testshell/PTestShell.ipdl
rename : ipc/testshell/TestShellCommand.ipdl => ipc/testshell/PTestShellCommand.ipdl
2009-09-09 15:00:14 -07:00
Benjamin Smedberg
09ee5262ac PPluginStream is badly named: there is going to be a PPluginStream, but it's not this!
--HG--
rename : dom/plugins/PluginStreamChild.cpp => dom/plugins/BrowserStreamChild.cpp
rename : dom/plugins/PluginStreamChild.h => dom/plugins/BrowserStreamChild.h
rename : dom/plugins/PluginStreamParent.cpp => dom/plugins/BrowserStreamParent.cpp
rename : dom/plugins/PluginStreamParent.h => dom/plugins/BrowserStreamParent.h
rename : dom/plugins/PPluginStream.ipdl => dom/plugins/PBrowserStream.ipdl
2009-09-09 10:04:09 -04:00
Chris Jones
9b4c68bafb bug 515242: finish FE support for actor types specified to be in "any" state (by adding State.ANY). fix IPDL handling of carriage return, remove them from new code 2009-09-09 01:58:08 -05:00