Commit Graph

2243 Commits

Author SHA1 Message Date
Benoit Girard
6f2c9d9235 Added CGContextSaveGState for OOPP Shared CGContext. b=565963 r=josh 2010-05-20 15:22:57 -04:00
Benoit Girard
125ee2ceb5 Fixed PluginInstanceParent::AnswerNPN_ConvertPoint definition. b=565365 r=josh 2010-05-20 15:22:54 -04:00
Benoit Girard
42b3220bf4 Dealloc CoreGraphics Shmem for OOPP. b=560941 r=josh 2010-05-20 15:22:41 -04:00
Jim Mathies
8e6808699a Bug 566610 - Undo the nuclear reply message option, keep the set focus fix. r=bent. 2010-05-18 13:17:10 -05:00
Jim Mathies
eb4761537a Bug 563377 - Flash fullscreen window refuses to close. r=bent. 2010-05-18 11:43:45 -05:00
Jim Mathies
e9cf1d1dad Bug 558986 - Backout of fix for crashes in TSF with Flash/Silverlight on tablets. CLOSED TREE 2010-05-17 14:36:43 -05:00
Benjamin Smedberg
695ab55828 Bug 558986 - Fix for crashes in TSF with Flash/Silverlight on tablets (OLE/COM nested event loops). r=cjones, jimm, ehsan. 2010-05-17 11:33:34 -05:00
Benoit Girard
94d6258a5b Bug 528146: Run plug-in code on the thread that starts in main(). r=cjones
--HG--
rename : dom/plugins/PluginThreadChild.cpp => dom/plugins/PluginProcessChild.cpp
rename : dom/plugins/PluginThreadChild.h => dom/plugins/PluginProcessChild.h
rename : ipc/ipdl/test/cxx/IPDLUnitTestThreadChild.cpp => ipc/ipdl/test/cxx/IPDLUnitTestProcessChild.cpp
rename : ipc/ipdl/test/cxx/IPDLUnitTestThreadChild.h => ipc/ipdl/test/cxx/IPDLUnitTestProcessChild.h
2010-05-10 23:18:00 -05:00
Josh Aas
09cb15005c Fix case where we return an NPError value as an nsresult in PluginModuleParent. b=564917 r=cjones 2010-05-12 14:12:49 -04:00
Josh Aas
fbb0399a48 Fix int comparison warning in BrowserStreamChild.cpp. b=560828 r=bsmedberg 2010-05-12 14:12:27 -04:00
Jim Mathies
0dfb101754 Bug 563377 - [OOPP] Add centralized ReplyMessage handler in PluginModuleChild for all child windows (various fullscreen hang fixs). r=bent. 2010-05-11 10:19:14 -05:00
Benjamin Smedberg
19727cf3ac Bug 564861 - NPN_IntFromIdentifier always returns INT_MIN when running in OOPP mode because of a backwards conditional check. Also, int identifiers of -1 don't work correctly when the parent first creates the identifier, because we were misusing a sentinel value. r=bent 2010-05-10 17:11:25 -04:00
Benjamin Smedberg
d5b8a23321 Bug 564607 - Plugins which implement NPClass.enumerate crash Firefox when run OOP: fix the precedence of C++ operations, r=bent 2010-05-10 17:11:08 -04:00
Jim Mathies
1696df474c Bug 563847 - [OOPP] Fix for crash [@ ntdll.dll@0x222a2 ] [@ RtlEnterCriticalSection ] (from PluginInstanceChild::FlashThrottleMessage). r=bent. 2010-05-06 11:40:26 -05:00
Benjamin Smedberg
624e1bc012 Bug 561817 part C - restore the NestableTasksAllowed munging that was removed in patch B: I thought it was vestigial, but it's necessary, r=bent 2010-04-30 14:43:59 -04:00
Benjamin Smedberg
b670251bc9 Bug 561817 part B - Install the nested event loop tracking mechanism for all RPC calls to plugins, not just specific handle-event calls, r=jimm 2010-04-30 14:42:51 -04:00
Karl Tomlinson
0ed80ea60e b=561308,539138 Realize GtkPlugs when associated with a socket for consistency with in-process behavior r=cjones
--HG--
extra : rebase_source : 96d433c381d6d560ddd566572cfc143d91113453
2010-04-29 22:43:15 +12:00
Karl Tomlinson
6eff65702c b=561690 NULL check aNPP in _geturlnotify for nspluginwrapper r=bsmedberg
--HG--
extra : rebase_source : 67c36002a3ef071b6ff6f31dcfe1954e3e61ca9e
2010-04-29 09:08:07 +12:00
Benjamin Smedberg
041170d975 Bug 561871 part B: don't use Windows events to enter/exit a nested event loop within an RPC stack frame, because delivery of those events isn't always associated with the correct stack frame, and also because the events can be lost if they race with an incoming RPC reply message. Instead, keep a linked list (on the stack) of RPC frames globally and per-channel, to associate requests to enter a nested event loop with the correct frame, r=jimm
--HG--
extra : rebase_source : 694186dde4643904752c67e0c6eb7a6ad1dd2082
2010-04-28 11:01:09 -04:00
Chris Jones
2cf9950c56 Bug 518881: Fix unused-result warnings in dom/plugins. r=bsmedberg 2010-04-27 00:43:03 -05:00
Thomas Lee
f562dffa71 Bug 541131: Include IPDL headers as |include protocol PFoo;|. r=cjones 2010-04-26 20:11:46 -05:00
Chris Jones
b95a8efccc Bug 555276: Top-level protocols should handle shmem messages if any subprotocol uses it. r=bent 2010-04-26 20:11:43 -05:00
Jim Mathies
1412f24516 Bug 558629 - Meter WM_USER events for Flash in PluginInstanceChild to improve responsiveness and lower CPU utilization. r=bsmedberg, a=developers. 2010-04-26 11:29:11 -05:00
Jim Mathies
2a5420965f Bug 561495 - [OOPP] Mouse wheel and related windowing event hangs. r=masayuki, a=jrmuizel. 2010-04-26 10:05:29 -05:00
Benoit Girard
d3e1eb8eee Remove "abort()" that was accidentally checked in. b=561519 r=josh a=#developers 2010-04-25 19:55:53 -04:00
Oleg Romashin
b6db5b93e9 Bug 553904 - Child tab process crashes on attempt to initialize child plugin process. r=bent.mozilla
--HG--
extra : rebase_source : 2a018b5f9c74a713e493643e611b330e08e1afd8
2010-04-20 21:43:51 +03:00
Karl Tomlinson
ef02cf2e13 b=560246 use CallPaint for GraphicsExpose r=cjones
--HG--
extra : rebase_source : 4d031160b1bee8f87610bf99b6d13b8c132dd0fb
2010-04-21 14:53:53 +12:00
Benoit Girard
65771400e0 Bug 555281 - Implement Core Animation NPAPI Drawing Model for OOPP. r=joe,josh,cjones
--HG--
extra : rebase_source : 8cc45083e0b513902c467c8c89248474c21b7923
2010-04-20 10:52:19 -04:00
Benjamin Smedberg
89f27dcde6 Bug 560213 - Don't double-delete PluginIdentifierParent when the plugin has already crashes, r=bent 2010-04-20 09:15:31 -04:00
Benoit Girard
4311364274 Backed out changeset 44ee6030f4b2 2010-04-19 02:57:22 -04:00
Benoit Girard
51b3305c85 Bug 555281 - Implement Core Animation NPAPI Drawing Model for OOPP. r=joe,josh,cjones
--HG--
extra : rebase_source : 29f581f60c6db0e8945a5121cf2d7007b10a7433
2010-04-18 19:46:33 -04:00
Joe Drew ext:(%20and%20Chris%20Jones%20%3Cjones.chris.g%40gmail.com%3E)
0bd95dade4 Bug 548437: Add a SysV shmem subtype of SharedMemory. r=dougt 2010-04-16 00:29:16 -05:00
Chris Jones
8c6626467d Fix typo from bug 519601 that busted windows. 2010-04-14 02:31:36 -05:00
Chris Jones
d0eda93616 Fix typo from bug 519601 that busted mac. 2010-04-14 02:20:53 -05:00
Karl Tomlinson ext:(%20and%20Chris%20Jones%20%3Cjones.chris.g%40gmail.com%3E)
8170c6fc97 Bug 519601: s/netscape/netsc@pe/ for plugin dso paths passed on the command line on linux. r=karlt 2010-04-14 02:04:52 -05:00
Benjamin Smedberg
0b6ea74a27 Bug 558390 - Quake Live crashes because it implements NP_Initialize using cdecl, instead of the correct stdcall. Force the calling function to use a frame pointer so that the stack pointer gets reset correctly before we return, r=jrmuizelaar, landing in mozilla-central for bake time pending review from josh or jst
--HG--
extra : rebase_source : dc32598b3ba1ad665b33146d298e01f64b58ef49
2010-04-13 12:10:00 -04:00
Jim Mathies
d7b3220b47 Bug 558503 - [OOPP] Watching netflix video: Silverlight crashes the plugin helper. r=bsmedberg. 2010-04-12 15:25:57 -05:00
Ben Turner
951aa34684 Bug 556849 - '[OOPP] Reduce unnecessary HasProperty calls for plugin scriptable objects'. r=jst+josh+bsmedberg. 2010-04-07 17:16:19 -07:00
Ben Turner
2bae25ded8 Backed out changeset 0ed675647700 for failing tests 2010-04-07 15:01:23 -07:00
Ben Turner
a9579c61a0 Bug 556849 - '[OOPP] Reduce unnecessary HasProperty calls for plugin scriptable objects'. r=jst+josh+bsmedberg. 2010-04-07 13:55:10 -07:00
Benoit Girard
c9dea733d4 Clear OOP CGContext for transparent plug-ins. b=557534 r=josh
--HG--
extra : rebase_source : 267e6db3a94758cc2834e5f48baf759bbaad1566
2010-04-06 15:02:54 -04:00
Jim Mathies
9d8d5b97e2 Bug 552062 - [OOPP] Black Background on certain Flash Objects. r=bent. 2010-04-05 11:43:55 -05:00
Jim Mathies
9266af2928 Bug 535295 - [OOPP] Tearing/Repainting issues with flash videos, their controls and other page content during/after scrolling. r=roc. 2010-04-05 11:43:13 -05:00
Benoit Girard
d0a3d6d019 Optimize Core Graphics drawing model OOPP implementation. b=555835 r=josh 2010-04-01 17:53:56 -04:00
Josh Aas
146d6023c8 Remove unimplemented status from NPN_ForceRedraw for IPC. We are ignoring calls on purpose and do not plan to implement it in any way at this point. b=555511 r=cjones 2010-03-30 23:53:53 -04:00
Chris Jones
8ef4352202 Bug 555309, part 3: Grab the plugin thread's ID on startup and blame it in hang dumps. r=bsmedberg 2010-03-30 19:24:47 -05:00
Chris Jones
40e74c43d6 Bug 555309, part 1: Add a CrashReporter::CurrentThreadId interface. r=bsmedberg 2010-03-30 19:24:45 -05:00
Oleg Romashin
a6a9c5bdf6 Bug 554911 - mozilla-runtime process hang and not closed properly after closing fennec UI. r=dougt
--HG--
extra : rebase_source : 5490b2acfe1980e372b7918cf36e8e771b2a0747
2010-03-30 07:34:37 -04:00
Josh Aas
4a2b551b96 [OOPP] Serialize remaining Cocoa NPAPI events, including keyboard events. b=555300 r=cjones 2010-03-29 15:27:49 -04:00
Benjamin Smedberg
8cbfc7ec64 Bug 542700 - Async calls aren't cancelled when the instance is destroyed, and the list of pending calls isn't protected against simultaneous access, r=cjones
--HG--
extra : rebase_source : b0949fd4921d1dbb558e84e191387964af5767fc
2010-03-25 14:25:38 -04:00
Josh Aas
0472de47fb Initialize NPP structure's pdata pointer to NULL. Plugins can mistake an uninitialized non-NULL value for their own instance pointer and try to dereference it. b=555312 r=BenWa 2010-03-29 10:16:27 -04:00
Josh Aas
5baa1625d5 [OOP] Add support for NPN_ConvertPoint via IPC. b=555250 r=cjones 2010-03-26 16:55:56 -04:00
Josh Aas
2ccc87e3f1 [OOPP] Whitelist Cocoa NPAPI events that don't require special serialization. b=555286 r=cjones 2010-03-26 16:25:33 -04:00
Benoit Girard
5080df284a Implement Core Graphics drawing model for out-of-process plugins. b=554676 r=josh sr=cjones 2010-03-26 16:07:37 -04:00
Josh Aas
342aa128ae [OOPP] Fix ordering of NP_Initialize and NP_GetEntryPoints calls for Mac OS X. The incorrect order causes Flash 10.1 to fail to load. b=555208 r=bsmedberg 2010-03-26 13:03:58 -04:00
Karl Tomlinson
9b9ff3a789 b=545297 don't add an extra reference to GtkPlug::socket_window with versions of GTK that already add a reference r=cjones 2010-03-25 16:18:25 +13:00
Karl Tomlinson
9828764f3e b=551875 handle g_main_depth() != 1 when events are dispatched r=cjones 2010-03-26 14:52:16 +13:00
Karl Tomlinson
eee596b947 b=526393 propagate scroll events from GtkPlug to the embedder r=roc (relanded) 2010-03-24 16:42:06 +13:00
Karl Tomlinson
90e98e6604 backout 60fb978130f5 due to wrong bug no in the commit message 2010-03-26 14:35:56 +13:00
Josh Aas
b5a2f793a8 Fix NPAPI NPN_PushPopupsEnabledState and NPN_PopPopupsEnabledState signature mismatches, statically initialize browser-side NPAPI function table with no casting. b=554170 r=bent 2010-03-25 19:45:33 -04:00
Jim Mathies
5ac0744b15 Bug 553606 - [OOPP] Limit spin loop to a call depth of one. r=bent. 2010-03-24 16:49:05 -05:00
Chris Jones
374a7da472 Bug 544936, part 6: Submit a browser minidump along with the plugin's, if we got one. r=dolske,gavin,josh 2010-03-24 16:22:04 -05:00
Chris Jones
4ec79fc1cc Bug 544936, part 5: Generate browser/plugin paired minidumps when the hang detector fires. r=bsmedberg 2010-03-24 16:22:03 -05:00
Chris Jones
b9728f5cea Bug 544936, part 4: Move some common code for dealing with minidumps and .extra files into nsExceptionHandler. r=ted 2010-03-24 16:22:01 -05:00
Ben Turner
8271154a90 Bug 521118 - '[OOPP] Need NPAPI threadsafety checks in plugin process'. r=cjones, a=dbaron for CLOSED TREE 2010-03-24 12:30:45 -07:00
Karl Tomlinson
54bc536db5 b=544211 propagate scroll events from GtkPlug to the embedder r=roc 2010-03-24 16:42:06 +13:00
Karl Tomlinson
f4e7af4fcc b=544211 ungrab the pointer before passing ButtonPress events to plugins r=roc 2010-03-24 15:26:10 +13:00
Ben Turner
5c68b4c136 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
ed25747f5d Bug 545149 - Fix various issues with winless plugin context menus. r=bent. 2010-03-22 22:06:35 -05:00
Chris Jones
44e86067dc 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
297b367c19 Backed out changeset bda8efa53512 2010-03-18 21:01:10 -05:00
Chris Jones
6b2339095c Bug 551392: Remove hack made unnecessary by unified build tiers. r=ted 2010-03-18 17:52:38 -05:00
Chris Jones
4b4233facd 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
7bfa1f6dbd Bug 552866: Don't run NotifyPluginCrashed from a nested context. r=bsmedberg 2010-03-18 17:52:35 -05:00
Josh Aas
36aed1ebfa 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
a5ed0a3773 Fix incorrect type usage for NPP_SetValue NPNVprivateModeBool. b=544158 r=karlt 2010-03-17 13:17:09 -04:00
Jim Mathies
3b62a1784f Bug 546766 - Don't trust plugin return values for getvalue calls. r=bsmedberg. 2010-03-13 17:57:53 -06:00
Chris Jones
51582e89d2 b=550026 Cancel PluginCrashed when PluginModule is deleted. r=bsmedberg 2010-03-08 09:16:02 +13:00
Benjamin Smedberg
266e6d371c 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
6a649a6eff Merge and review fixup from async streams, bug 551049 2010-03-11 11:56:35 -05:00
Benjamin Smedberg
da25e643f3 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
bb9f80b36c 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
a854facd28 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
961a9e2c1e 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
96bfcbf97c Bug 551387 - octoshape plugin crashes because it doesn't implement NPNFunctions.setwindow, r=bent 2010-03-10 10:54:22 -05:00
Chris Jones
41ab2c5abe Merge backout 2010-03-11 05:07:51 -06:00
Chris Jones
ec36ea088a Backing out bug 550026 due to orange 2010-03-11 05:07:42 -06:00
Chris Jones
3ca041ff56 Followup to bug 549888: don't call HandleEvent after Paint 2010-03-11 04:13:23 -06:00
Chris Jones
36162b5b9d 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
f7ab2c4e17 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
3cbb7db096 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
ece3c832d4 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
6989296175 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
ee351fc953 Bug 532208: Defer deletion of browser streams to later tasks. r=bsmedberg 2010-02-26 13:07:56 -06:00
Ben Turner
323716c141 Fix braindead variant conversion bug, r=cjones, no bug 2010-02-25 15:31:09 -08:00
Karl Tomlinson
a0842f75ce 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
5839dc62ac Merge backout of bug 532208 due to test failures, crashes, and overall badness. 2010-02-25 03:03:12 -08:00
Benjamin Smedberg
11b1d27433 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
30883fb3f1 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
fbec9f6e59 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
39cc8f63c3 Bug 547353 - [OOPP] Mouse pointer coordinates misaligned with winless Silverlight. r=bent. 2010-02-24 16:13:48 -08:00
Chris Jones
2a273c0016 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
2e0e523879 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
8a8ef6a58f 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
a91ddf5a32 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
addd94f3ae Bug 547316 - Plugin window subclass is not reset when CallNPP_Destroy fails, r=bent 2010-02-19 17:08:16 -05:00
Jim Mathies
32ae2fd671 Bug 547142 - [OOPP] Exiting full-screen video locks the browser. r=bent. 2010-02-22 17:10:08 -08:00
Jim Mathies
b95fd6ca3d Bug 547276 - [OOPP] Windowed focus hang in CallHasProperty. r=bent. 2010-02-22 17:09:27 -08:00
Ben Turner
307f2d8839 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
8ea3d49ec0 Bug 545239 - [OOPP] Plugin focus: hang at PPluginInstanceParent::CallSetPluginFocus against child _NtUserSetFocus. r=bsmedberg. 2010-02-18 14:21:21 -06:00
Jim Mathies
9573527c53 Bug 543201 - [OOPP] Shockwave window position is not correct. r=bent. 2010-02-18 14:20:25 -06:00
Jim Mathies
cbbfe11f4a 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
a75eba7421 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
1ab656890e 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
5c88b2a100 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
1a685eee60 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
0c66f9546b 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
b6a87b5083 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
12fceeb0cd bug 544193 - Qt version for plugins embedding functionality required. r=mozbugz. 2010-02-10 22:48:20 +02:00
Ted Mielczarek
2a33518c3c 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
2028c2d748 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
eba8d4ec5c Bug 543831 - [OOPP] Hang with embedded youtube video. r=bent. 2010-02-04 14:32:02 -06:00
Benjamin Smedberg
c0e27c0256 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
7477581a9e 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
d5eb4d3947 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
47430997d6 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
def53fd293 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
604f1ba55c 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
66af1ab007 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
c1b32a0fc9 Clean up a bunch of things in nsNPAPIPlugin. b=543339 2010-01-31 16:41:26 -05:00
Daniel Holbert
6a765dabd8 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
b1782fd5cb 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
76f524a22a Bug 534644 - e10s: implement Qt ipc/chromium backend, part 2. r=benjamin. 2010-01-29 08:50:44 +02:00
Oleg Romashin
9a4397fa5b 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
aa95af2225 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
22622cbfd1 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
0345bea33c 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
f2ba8d476e 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
a0ff9717b5 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
32a73623b6 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
f3acc3f492 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
7f5a470794 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
28cc656304 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
cca33bca9a 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
03f2a9760b 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
1b91ca0efa 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
8cf748e18c 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
19dc78f0aa 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
212ae41366 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
3d8b8832ba Bug 539755 - Implement NPN_GetValueForURL, NPN_SetValueForURL, and NPN_GetAuthenticationInfo, r=bent 2010-01-15 11:26:46 -05:00
Benjamin Smedberg
1a09d5ee52 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
a5990daace 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
53e84d481c Bug 539280 - Add support for NPNVnetscapeWindow query on Linux, r=karlt 2010-01-14 10:18:34 -05:00
Peter Van der Beken
91685776a5 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
0104108380 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
1b93c5d97b 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
59737bce0b Bug 536369 - OOPP: Add NPNVnetscapeWindow support for windows. r=bsmedberg. 2010-01-13 19:47:38 -06:00
Jim Mathies
ed4ec9bc95 Bug 536369 - OOPP: Fix for mouse event serialization errors. r=bsmedberg. 2010-01-13 19:46:44 -06:00
Chris Jones
c3261b9717 Bug 538537: Guard BrowserStreams from being deleted from within their constructor. r=bsmedberg 2010-01-12 17:06:18 -06:00
Benjamin Smedberg
5d29eaa804 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
04d26699a0 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
0ccee0c61c Bug 539020 - OOPP: mouse events get duped. r=bsmedberg. 2010-01-11 12:53:08 -06:00
Chris Jones
61403b3c24 Fix windows bustage caused by 04d6f128da25 2010-01-04 16:41:34 -06:00
Chris Jones
ad47f303ae Bug 535687: Fix regression in forwarding NPN_InvalidateRect() for OOPP on linux. r=bent 2010-01-04 15:46:34 -06:00
Walter Meinl
c20eb4938d Bug 536264 - "[OS/2] build break in modules\plugins" [r=josh] 2009-12-23 15:12:00 -06:00
Chris Jones
526c1eb4fb 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
19e77143fb Bug 518924 - Implement NPN_AsyncCallback r=cjones 2009-12-16 17:27:18 -05:00
Benjamin Smedberg
1f863b7fb6 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
63b57abda9 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
f2b62bb114 Merge mozilla-central into electrolysis. 2009-12-14 21:27:17 -05:00
Jim Mathies
3c68e53543 Bug 534027 - input event coords incorrect for oop windowless plugins. r=jmuizelaar. 2009-12-14 18:28:51 -06:00
Jim Mathies
8334063adb Bug 531860 - plugin-alpha-zindex ref test fails with oopp enabled. r=jmuizelaar. 2009-12-14 18:27:25 -06:00
Benjamin Smedberg
4d837b5abc 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
f9ead8a5d6 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
6b8e2464c1 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
badf2095ff 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
061a369048 Bustage fix 2009-12-03 15:44:33 -05:00
Benjamin Smedberg
87941a941e 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
42a284d56b 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
4fdb3bfb23 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
b695aba156 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
f5b425c04f Fix bad invalidation bug in child NPObjects 2009-12-03 11:53:09 -08:00
Chris Jones
c47450d9a7 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
270962252a 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
16291938f9 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
c059302c3a Build fix 2009-12-01 17:33:51 -06:00
Ben Turner
d98c67138d Bug 526401 - Fixup handling of null NPP. r=bsmedberg. 2009-12-01 13:27:13 -08:00
Jim Mathies
705471067a Bug 522299 - Electrolysis: Get windowless plugins drawing on win32. r=jmuizelaar. 2009-12-01 15:05:26 -06:00
Benjamin Smedberg
822c6cd02f 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
9b8b8bbfe2 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
53bf5266c6 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
3e0ae20e17 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
6acc2d4d3b Backed out changeset 97c456993dbd -- red herring, no need for this debugging spew. 2009-11-20 13:48:42 -05:00
Chris Jones
b70e1dc5c2 temporary debugging spew to check bug 529234 2009-11-20 11:54:46 -06:00
Benjamin Smedberg
188d096d5c 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
d6c803e859 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
7101a519cc 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
9e4dea1fd1 Fix bad allocation pattern in NPP_New 2009-11-19 14:47:09 -08:00
Ben Turner
5d92ec3ff2 Followup to bug 527876 2009-11-13 13:19:33 -08:00
Ben Turner
8e9c6fea1d Bug 527876 - 'test_windowed_invalidate.html hangs during mochitest-ipcplugins'. 2009-11-13 12:20:03 -08:00
Chris Jones
825bd599dd 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
82191b418a Bug 525792 - 'Fix leaks running mochitests'. 2009-11-12 14:16:54 -08:00
Benjamin Smedberg
661a77e3d4 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
0a324cd616 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
5c7a5ab290 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
d515b14aeb Fix silly bugs 2009-11-09 17:30:02 -08:00
Phineas T. Farnsworth
3da7352b78 bug 526626: band-aids for shutdown assertions 2009-11-09 16:56:55 -06:00
Ben Turner
d10ccd2c5a Bug 522414 - 'RPC and Sync channels will deadlock easily on Windows'. r=jimm+rs. 2009-11-06 14:33:12 -08:00
Chris Jones
2eb8767355 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
c916fbb575 bug 525792: fix leaking PluginModules, call NP_Shutdown() on plugins. minor, no r= 2009-11-03 15:37:07 -06:00
Benjamin Smedberg
4ae77766a7 Remove stale TODO, this will be properly covered by parent-side error handling events. 2009-11-02 11:48:52 -05:00
Benjamin Smedberg
f5d95a9f70 Linux build bustage from previous commit, bug 525605. 2009-10-31 15:32:06 -04:00
Benjamin Smedberg
86020d2a05 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
e39d5bd323 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
ccfc1178e3 bug 523761: give top-level IPDL actors handles to each others' processes. r=bent 2009-10-27 16:52:37 -05:00
Chris Jones
7fa53e51ac Make a DEBUG_cjones log message DEBUG 2009-10-27 16:07:49 -05:00
Benjamin Smedberg
d5c63908ca Linux build bustage from bug 522122. 2009-10-27 16:59:40 -04:00
Jeff Muizelaar
c6986e395d 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
552eb2b966 Allow multiple types of OOP plugins to load. b=516509 r=cjones 2009-10-27 15:51:12 -04:00
Chris Jones
46ad34660e bug 523143: switch protocols using nsTArray to native IPDL arrays 2009-10-19 14:10:52 -05:00
Chris Jones
9570ba4cbb bug 506171: rewrite lower.py and add native IPDL arrays. 2009-10-16 18:31:53 -05:00
Ben Turner
46834b0ee5 Add NPN_Evaluate and NPN_Push/PopPopupsEnabledState support 2009-10-13 10:54:41 -07:00
Karl Tomlinson
de31404147 b=521376 remove XSynchronize from plugin process r=cjones 2009-10-12 12:54:49 +13:00
Chris Jones
f1b7dc69e2 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
e95bb870a8 Remove testplugin for ipc, we can run the real one now. 2009-10-08 14:40:51 -07:00
Ben Turner
e06629ffc5 Oops, revert bad changes 2009-10-08 12:23:04 -07:00
Ben Turner
64cfab94c4 Add threadsafety assertions to plugin code 2009-10-08 12:11:13 -07:00
Ben Turner
6d1571567b Oops, missed two 2009-10-08 11:45:20 -07:00
Ben Turner
e512cd4cd8 Crash fixes, must initialize variants before returning true 2009-10-08 11:36:50 -07:00
Chris Jones
745fd38927 implement NPN_UserAgent, which was trickier than expected 2009-10-08 02:54:16 -05:00
Chris Jones
f3992ab813 fix some simple crasher bugs 2009-10-08 00:49:30 -05:00
Ben Turner
423c5543dd Bug 516524 - Support NPRuntime across processes. r=bsmedberg. 2009-10-07 16:50:48 -07:00
Karl Tomlinson
3ed5b0a4b2 b=519896 NPN_InvalidateRect r=cjones 2009-10-01 17:09:21 +13:00
Karl Tomlinson
6256ea2a09 b=519641 pass visual and colormap to plugin process r=cjones 2009-10-01 10:36:14 +13:00
Chris Jones
f8a593bfbe update plugin process NPNetscapeFuncs interface (with stub impls) to the most recent NPAPI. 2009-09-29 13:50:11 -05:00
Chris Jones
4592c2c15d fix stupid bug in deserialization of NPWindow. X11 windowless plugins now work. 2009-09-25 15:35:03 -05:00
Chris Jones
c83bd901e1 forward NPWindow.{x, y} properly. no windowless gfx yet, but closer. thanks=karlt 2009-09-25 11:16:44 -05:00
Chris Jones
39379cfc8a attempt to fix linux build 2009-09-25 00:17:29 -05:00
Chris Jones
13cbfa2955 pre-fix windows bustage. thanks=bent 2009-09-24 21:14:41 -05:00
Chris Jones
026f20f14d basic support for windowless X11 plugins. gfx not quite working yet 2009-09-24 21:03:59 -05:00
Benjamin Smedberg
b30e208aa5 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
f726ffaf7b Bustage fix for linux 2009-09-23 00:48:28 -07:00
Ben Turner
e79eab04e0 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
2efdc3145d 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
8d3e0640b8 bug 517977: require actor impls to override AllocPFoo/DeallocPFoo instead of PFooConstructor/PFooDestructor 2009-09-22 12:31:11 -05:00
Chris Jones
50ed6c02c5 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
7a91b6b1de 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
2056ffeb78 __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
7935719c87 More nsresult -> bool fixes, and fix windows bustage from NPEvent stub impl. 2009-09-19 12:24:24 -07:00
Chris Jones
ccac220704 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
379dcfab05 Fix up dom/plugins code for bug 516661 - no more nspluginsdefs.h! 2009-09-18 17:01:09 -04:00
Chris Jones
16c57e27c9 fix changes that busted ipc-test plugin 2009-09-17 20:49:04 -05:00
Chris Jones
ad7cc03628 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
151058edaa 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
1bbec701d1 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
63dd6aeab8 Actually implement the geturl/posturl functions on the child-side plugin host. 2009-09-15 15:48:18 -04:00
Ben Turner
b063012cae Further fixes for unions 2009-09-14 19:26:17 -07:00
Ben Turner
366a3cf8ce Add simple tests for NPIdentifiers in testplugin 2009-09-14 15:35:02 -07:00
Ben Turner
af82cf26df Add support for NPIdentifiers to oop plugins 2009-09-14 13:01:31 -07:00
Benjamin Smedberg
d96f7451fa 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
c23fd76f77 Fix Windows build bustage from the NPN_GetURLNotify patch. 2009-09-11 13:52:53 -04:00
Benjamin Smedberg
b11c695563 Implement NPN_GetURLNotify/NPN_PostURLNotify/NPP_URLNotify. Still without any tests! 2009-09-08 17:22:50 -04:00
Chris Jones
11c6e75c70 add discriminated union types to IPDL 2009-09-10 23:55:03 -05:00
Ben Turner
5a0e09b701 Remove 'Protocol' suffix from IPDL-generated files 2009-09-09 15:59:06 -07:00
Ben Turner
df0dc3228b 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
8f891f87cd 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
258569f503 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
Ben Turner
06029219b0 Rename plugin protocols and fix up usage
--HG--
rename : dom/plugins/NPP.ipdl => dom/plugins/PPluginInstance.ipdl
rename : dom/plugins/NPAPI.ipdl => dom/plugins/PPluginModule.ipdl
rename : dom/plugins/NPObject.ipdl => dom/plugins/PPluginScriptableObject.ipdl
rename : dom/plugins/NPBrowserStream.ipdl => dom/plugins/PPluginStream.ipdl
rename : dom/plugins/NPPInstanceChild.cpp => dom/plugins/PluginInstanceChild.cpp
rename : dom/plugins/NPPInstanceChild.h => dom/plugins/PluginInstanceChild.h
rename : dom/plugins/NPPInstanceParent.cpp => dom/plugins/PluginInstanceParent.cpp
rename : dom/plugins/NPPInstanceParent.h => dom/plugins/PluginInstanceParent.h
rename : dom/plugins/NPAPIPluginChild.cpp => dom/plugins/PluginModuleChild.cpp
rename : dom/plugins/NPAPIPluginChild.h => dom/plugins/PluginModuleChild.h
rename : dom/plugins/NPAPIPluginParent.cpp => dom/plugins/PluginModuleParent.cpp
rename : dom/plugins/NPAPIPluginParent.h => dom/plugins/PluginModuleParent.h
rename : dom/plugins/NPObjectChild.cpp => dom/plugins/PluginScriptableObjectChild.cpp
rename : dom/plugins/NPObjectChild.h => dom/plugins/PluginScriptableObjectChild.h
rename : dom/plugins/NPObjectParent.cpp => dom/plugins/PluginScriptableObjectParent.cpp
rename : dom/plugins/NPObjectParent.h => dom/plugins/PluginScriptableObjectParent.h
rename : dom/plugins/NPBrowserStreamChild.cpp => dom/plugins/PluginStreamChild.cpp
rename : dom/plugins/NPBrowserStreamChild.h => dom/plugins/PluginStreamChild.h
rename : dom/plugins/NPBrowserStreamParent.cpp => dom/plugins/PluginStreamParent.cpp
rename : dom/plugins/NPBrowserStreamParent.h => dom/plugins/PluginStreamParent.h
2009-09-08 23:31:35 -07:00
Benjamin Smedberg
069f02260e Revert accidental commit of printf-debugging code in the test plugin. 2009-09-08 16:05:12 -04:00
Benjamin Smedberg
28dfae6b92 Implement browser streams (NPStream from the plugin host to the plugin). Unfortunately, there aren't any tests for this stuff at all. Various related APIs like NPN_GetURLNotify are not yet implemented and will require changes to the protocol structure (you have to be able to associate a browser stream with a notify request through NPStream->notifyData). 2009-08-18 16:20:03 -04:00
Ben Turner
7e8db9f9a4 Force child processes to close and wait for them on shutdown 2009-09-02 17:18:27 -07:00
Robin Bate Beorop
b4dc22d447 Bug 507218 - Expose the process type (chrome/content) to client code via XRE_GetProcessType and nsIXULRuntime, r=bent 2009-08-19 13:09:51 -04:00
Benjamin Smedberg
97dfb1e921 Remove #ifdef 0 functions in nsNPAPIPluginParent which definitely won't live there. Some (memory allocation/deallocation) are local, while others should just be instance methods on the NPP wrappers. 2009-08-14 14:47:30 -04:00
Chris Jones
f02911c98e build on 64-bit linux 2009-08-12 00:41:55 -05:00
Ben Turner
88db6a6673 Skeleton implementation for NPObject remoting 2009-08-10 16:28:22 -07:00
Ben Turner
37f6bdca20 Add extremely basic support for unblocking in the event of a bad message 2009-08-07 16:13:20 -07:00
Ben Turner
a6cb8553d3 Add test plugin for ipc, make sure it works 2009-08-05 15:36:33 -07:00
Ben Turner
73c91dbd7b Don't abort if more than one arg is passed to a plugin 2009-08-05 13:49:13 -07:00
Ben Turner
ff67e8afc3 Use mozilla strings instead of std::string in IPDL 2009-07-29 14:12:15 -07:00
Benjamin Smedberg
3f76d197c8 Make --disable-ipc work... mac-ppc now builds by default. 2009-07-20 15:04:52 -04:00
Chris Jones
69604af50f add SyncLaunch() method to GeckoChildProcess class. remove much newly obseleted code. 2009-07-20 13:14:41 -05:00
Benjamin Smedberg
fc924865a3 Build system for .ipdl files. 2009-07-13 12:14:56 -04:00
Chris Jones
8354e23734 remove in/out/inout syntax in favor of parent:, child:, and both: labels 2009-07-10 19:19:54 -05:00
Chris Jones
51d8168a20 generate skeleton IPDL actor impls, like the IDL compiler does for interfaces. also fix the C++ visitor. 2009-07-10 15:56:40 -05:00
Chris Jones
3835b44362 use a single binary, mozilla-runtime, for all child processes 2009-07-10 14:03:09 -05:00
Chris Jones
06af384fd3 add parsing and type-checking of protocol state machines in preparation for codegen of dynamic FSM checker. fix a couple of bugs here and there. 2009-07-08 18:03:56 -05:00
Benjamin Smedberg
20278b20ba Commit new versions of generated headers. 2009-07-07 11:20:51 -04:00
Ben Turner
9530b586ff Some windows build fixup 2009-07-02 13:48:33 -07:00
Ben Turner
fb20290727 merge bent's changes from libchromiumipc. Gtk plugins now drawing 2009-07-01 14:19:32 -07:00
Chris Jones
22e9e1dee6 merge plugin work from libchromiumipc. add env var check for OOP iframe. a few small bugfixes here and there. 2009-07-02 11:54:22 -05:00
Chris Jones
7aded61394 add initial support for protocol management in IPDL. small changes to existing protocols in preparation for merge from libchromiumipc. 2009-07-02 00:45:19 -05:00
Benjamin Smedberg
cb52b46f78 Hook up the tab child process 2009-06-30 15:21:25 -04:00
Benjamin Smedberg
5a0b8bf812 Plugins stuff: this code is equivalent to electrolysis-tmp revision 61cd9e89fd00, except that I had to merge forward a minor change to the plugin-loading code from Josh's cleanup. 2009-06-30 14:51:05 -04:00