Commit Graph

438 Commits

Author SHA1 Message Date
Chris Jones
f0560d9e8e Bug 441324, part 1: Shuffle around includes to avoid problems with #define malloc et al. r=bsmedberg 2010-03-03 23:02:55 -06:00
Benjamin Smedberg
0b629a5939 Backed out changeset f829f942873d - bug 548217 because of topcrash bug 549112 2010-02-27 17:36:54 -05:00
Benjamin Smedberg
958042217d Bug 548217 - Make NP_SEEK streams work properly: they shouldn't crash if NPN_RequestRead is called after all the stream data is delivered, and they should call NPP_DestroyStream when NPN_DestroyStream is called, but not before. To this end, the classes nsPluginStreamInfo and nsPluginStreamListenerPeer have been unified: the nsNPAPIPluginStreamListener holds the stream listener peer alive so that additional range requests can be made on it. In addition the nsNPAPIPluginStreamListener holds *itself* alive for NP_SEEK streams, and only calls releases itself/calls CleanUpStream when the plugin explicitly calls NPN_DestroyStream or when the associated plugin instance is being destroyed. r=josh/jst 2010-02-23 21:58:27 -05:00
Benjamin Smedberg
7985a1dcb1 Backed out changeset 77dc38d8196e - bug 548217 because even though this patch is correct, it exposes a bug in the OOPP code which got backed out. 2010-02-25 03:57:57 -08:00
Benjamin Smedberg
4a49a68e09 1;2cBug 548217 - Make NP_SEEK streams work properly: they shouldn't crash if NPN_RequestRead is called after all the stream data is delivered, and they should call NPP_DestroyStream when NPN_DestroyStream is called, but not before. To this end, the classes nsPluginStreamInfo and nsPluginStreamListenerPeer have been unified: the nsNPAPIPluginStreamListener holds the stream listener peer alive so that additional range requests can be made on it. In addition the nsNPAPIPluginStreamListener holds *itself* alive for NP_SEEK streams, and only calls releases itself/calls CleanUpStream when the plugin explicitly calls NPN_DestroyStream or when the associated plugin instance is being destroyed. r=josh
--HG--
extra : rebase_source : fba343acbfcaa785c7405552d42f4558424b485c
2010-02-23 21:58:27 -05:00
Benjamin Smedberg
256648ae37 Bug 543977 - NPClass.invoke should be optional when a class just wants to implement NPClass.invokedefault, r=jst
--HG--
extra : rebase_source : 2e1fb9896bcbf12bc6d2772c02a1cc9557efe6eb
2010-02-17 13:30:54 -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
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
Doug Turner
c5fb72ab64 Bug 543976 - Clean up Maemo defines. r=ted 2010-02-09 11:02:11 -08:00
Josh Aas
c04a923d42 Fix our plugin library loading code so that it works in 64-bit builds. 64-bit NSPR does not support bundle loading. b=544579 r=smichaud 2010-02-08 13:22:25 -06:00
Josh Aas
e0d1ee7974 More complete plugin architecture check for Mac OS X. Support 64-bit-only plugins and stop assuming that any universal binary plugin has the correct architecture. Fixes bug 544433 and bug 544437. r=smichaud 2010-02-06 23:29:58 -06:00
Josh Aas
20a6128dae Make all scriptable methods in nsIPluginHost appear before the C++ code. b=542712 r=jst 2010-02-06 16:07:13 -06:00
Benjamin Smedberg
151a3c2903 Bug 544016 - If two plugins are available for a MIME type, prefer the enabled one to the disabled/blocklisted one, r=josh
--HG--
extra : rebase_source : 8c4382719dd8886634a8f89a85d89af1e96f6c4d
2010-02-03 16:52:07 -05:00
Benjamin Smedberg
6db43fb19a revert changeset f61e06c31086 (bug 542971) since it caused bug 543376. 2010-02-02 17:18:37 -08:00
Benjamin Smedberg
fb8f40b46e Bug 542248 - ASSERTION: Shouldn't return null and NPERR_NO_ERROR (and then crash) navigation from one silverlight page to another, r=josh 2010-02-02 09:46:25 -05:00
Ben Turner
dac5a3fee3 Bug 542915 - 'Protect DelayedReleaseGCCallback from reentering and double-freeing NPObjects' r=jst+josh.
--HG--
extra : transplant_source : %5B%C1%C3QH%22%22%24%9D%A2%CE%E9%907%941%8F%F5%07%19
2010-02-01 12:35:48 -08: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
Josh Aas
46d060dccd Get rid of nsPluginInstanceTag. Clarifies the plugin object hierarchy and makes it easier to get from one object to another. We avoid unnecessary null checks and strong references due to clarified lifetimes dependencies between objects. Makes all of this code less error-prone. b=542971 r=jst 2010-01-29 14:42:54 -05:00
Ben Turner
33a8aae576 Bug 542337 - '[OOPP] hang in test_plugin_clipping2.xhtml' Followup fix, r=roc.
--HG--
extra : transplant_source : ._%92%D6%40%FE%1E%92%01%11%7F%BA%2A%EF%24Y%84%DC6%0E
2010-01-28 12:23:07 -08:00
Ben Turner
453fbad6ed Bug 542337 - '[OOPP] hang in test_plugin_clipping2.xhtml' r=jimm. 2010-01-28 11:32:41 -08:00
Benjamin Smedberg
4245b947f3 Bug 539063 - Implement a whitelist/blacklist for OOPP, r=josh 2010-01-28 10:31:53 -05: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
Chris Jones
c22de50bdf Bug 542356: Initialize the NPError outparam passed to NPP_New() so that plugins must set it to NPERR_NO_ERROR (and so as to work around a valgrind UMR false-positive for OOPP). r=joshmoz 2010-01-27 17:45:34 -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
Josh Aas
2e7df95914 Get rid of nsPluginInstanceTagList. Make this code easier to deal with and less error-prone. b=535643 r=jst 2010-01-26 20:30:58 -05:00
Gavin Sharp
937dce11b7 Bug 189378: add pref to disable plugins in the browser, r=josh
--HG--
extra : rebase_source : 7f70e2585d6b2840fa801969e5af50c5e81caca8
2009-10-05 05:00:57 -04: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
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
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
Chris Jones
80b004dd05 Bug 538532: When a plugin crashes, make sure all its instances are "stopped" ASAP. r=bsmedberg r=josh
--HG--
extra : rebase_source : 4355e574e5cf74da76ef5773e16fa3bd9a09225e
2010-01-12 00:45:24 -06:00
Chris Jones
2d1e4c2722 Bug 538532: Add the helper method nsPluginHost::FindTagForPlugin(). r=josh
--HG--
extra : rebase_source : c7192818d9f6e42510e681286a4dda774df8a94c
2010-01-12 00:45:23 -06:00
Josh Aas
9f1683fecf Sent "PluginCrashed" notification when a plugin crashes. b=519541 r=jst r=bsmedberg 2010-01-13 11:42:41 -05:00
Jim Mathies
bd95331a3a Bug 536303 - OOPP: disable oopp for Windows 2000. r=benjamin. 2010-01-10 17:50:36 -06:00
Benjamin Smedberg
86980c504e Bug 532246 - Plugins should not be able to obtain an NPObject* belonging to a different NPP, because that instance may go away before this one and the NPObject* may be invalidated and destroyed. Double-wrap in these cases. r=josh sr=jst 2009-12-02 12:02:41 -05:00
Josh Aas
0487ff44e4 Minor cleanup, no bug. a=bsmedberg 2010-01-05 13:30:00 -05:00
Michael Wu
27fd1e717b Bug 273025 - "bad logic results in potential leak xor crash based on flow" (Improve GetURL/PostURL code, v4 (2/2)) [r+sr=jst] 2009-12-27 14:26:00 -06:00
Oleg Romashin
bd7430f326 b=532627; nsPluginHostImpl::WritePluginInfo should call PR_Sync before PR_Close, r=jst 2009-12-23 13:58:54 +02:00
Blake Kaplan
b03049c0f2 Bug 535641 - Move this declaration around. r=jst 2009-12-22 16:54:06 -05:00
Josh Aas
ac8d51b495 Improve plugin instance stopped/started state management. b=535660 r=roc 2009-12-17 21:09:22 -05:00
Josh Aas
76e1222110 Stop storing xpconnect status in the plugin tag, it isn't used any more. b=535502 r=roc 2009-12-17 12:22:46 -05:00
Benjamin Smedberg
211d3738cb Merge mozilla-central to electrolysis. 2009-12-16 19:02:20 -05:00
Josh Aas
df4585ba38 Fix plugin host so that idle event timer can QI correctly and make the callback. b=535357 r=smichaud 2009-12-16 15:54:16 -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
Benjamin Smedberg
234f5858ff Followup to review comment for bug 534866: don't set fCallbacks.size twice on MacOSX. 2009-12-16 09:10:30 -05:00
Benjamin Smedberg
ffeebc91f0 Merge mozilla-central into electrolysis 2009-12-16 08:38:42 -05:00
Josh Aas
a2cdef8b23 Separate plugin tag code from the plugin host. b=533371 r=jst 2009-12-16 08:16:42 -05:00
Benjamin Smedberg
097c85cae3 Bug 534866 - Fix Java and WMP plugins on Windows by initialize NPPluginFuncs.size before calling NP_Initialize, regression from bug 516509 which landed with the e10s merge, a=blocker-regression r?pending from josh 2009-12-15 21:24:26 -05:00
Josh Aas
733399cc7e Windows bustage fix, b=533371 2009-12-15 20:21:57 -05:00
Josh Aas
11a169cbb4 Separate plugin tag code from the plugin host. b=533371 r=jst 2009-12-15 17:47:22 -05:00
Josh Aas
df154de1eb Backed out changeset cbb4f67c6b68 2009-12-15 22:15:39 -05:00
Josh Aas
514a6c5e9d Greatly reduce the number of timers firing when multiple Carbon plugin instances are active on Mac OS X. Should reduce CPU usage. Make all instances use the same (at most two) timers for idle events. b=519598 r=roc 2009-12-15 15:44:52 -05:00
Josh Aas
e4ef56c1b9 Unset the plugin instance on the plugin instance owner if the instance fails to initialize. b=533030 r=jst 2009-12-15 15:28:12 -05:00
Benjamin Smedberg
999be86ac2 Merge mozilla-central into electrolysis. 2009-12-14 08:01:18 -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
cb534efdff Oh snap! nsPluginTag.mEntryPoint became a nsCOMPtr in a merge and ended up being double-released. Victory is mine! 2009-12-04 23:27:32 -05:00
Benjamin Smedberg
3e06063b78 !MOZ_IPC build bustage from bug 532751
--HG--
extra : rebase_source : a0b3a3318d3cd3d03fb034ae4d9fd5ab6cb9454a
2009-12-04 13:53:59 -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
487e2582f8 Bug 532700 - nsNPAPIPluginInstance can outlive its nsNPAPIPlugin, sr=jst pending r=josh 2009-12-03 15:33:27 -05:00
Benjamin Smedberg
767eb11cb4 Merge mozilla-central into electrolysis 2009-12-04 11:28:50 -05:00
Benjamin Smedberg
13786e8a04 Bug 532605 - _write conflicts with symbols in the MSVC runtime. Remove all vestiges of PR_BEGIN_EXTERN_C from nsNPAPIPlugin.{h,cpp}, so that these functions are given C++ mangled names in the namespace we actually declared for them. 2009-12-03 09:17:49 -05:00
Ben Turner
ce1bd10179 Don't let plugin return a null window object and NPERR_NO_ERROR, r=jst. 2009-12-01 15:08:16 -08:00
Ben Turner
b17063546e Bug 526401 - Fixup handling of null NPP. r=bsmedberg. 2009-12-01 13:27:13 -08:00
Josh Aas
783c445e79 Fixing bug 520639. Make plugin library unloading independent of the lifetime of nsPluginTag objects. Patch and reviews by jst@mozilla.com and joshmoz@gmail.com, a=blocking1.9.2+ 2009-12-02 21:14:13 -08:00
Benjamin Smedberg
9911c2f99d Merge mozilla-central into Electrolysis 2009-11-30 12:59:43 -05:00
Johnny Stenback
c9d4899294 Fix for bug 531290 (Firefox 3.6b4 [@ PL_strlen | nsNPAPIPluginInstance::Initialize(nsIPluginInstanceOwner*, char const*) ] during npietab.dll initialization [@nsCOMPtr_base::assign_from_qi(nsQueryInterface, nsID const&) | xul.dll@0x9cc3c3 ]). r=josh, a=blocking1.9.2+. 2009-11-30 11:11:20 +01: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
Josh Aas
a4b1dd24fa Fix a bug that prevents NPAPI plugins from retrieving cookies. b=526462 r=roc 2009-11-25 02:40:46 -05: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
Benjamin Smedberg
737515b2c8 Merge mozilla-central into electrolysis. 2009-11-19 12:41:46 -05:00
Benjamin Smedberg
453514dea2 Bug 523769 - Don't call into plugin hooks (specifically NPObject.deallocate) while mid-GC, r=jst+mrbkap 2009-11-17 14:51:46 -05:00
Ben Turner
cafe07f11b Bug 525792 - 'Fix leaks running mochitests'. 2009-11-12 14:16:54 -08:00
Benjamin Smedberg
17cf638aac Merge mozilla-central into electrolysis. 2009-11-11 12:35:42 -05:00
Benjamin Smedberg
281b9fd4a8 Merge from mozilla-central. 2009-11-06 09:54:28 -05: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
eba77abeb6 Merge mozilla-central into e10s. 2009-10-28 11:32:00 -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
Ben Turner
c650170292 Don't let people get the order of includes wrong in this horrifying patchwork of chromium and mozilla types 2009-10-21 16:01:16 -07:00
Benjamin Smedberg
15de24f35e Merge mozilla-central to electrolysis. 2009-10-20 12:08:28 -04:00
Benjamin Smedberg
fa058fc1f1 Merge mozilla-central to electrolysis to pick up bug 515436. 2009-10-12 10:51:38 -04:00
Rich Walsh
bdab68be3d [OS/2] Bug 516274 - fix plugin focus issues, r=pweilbacher 2009-10-12 11:10:38 +02:00
Ben Turner
80b478e8c5 Bug 516524 - Support NPRuntime across processes. r=bsmedberg. 2009-10-07 16:50:48 -07:00
Ben Turner
62534891fc Merge mozilla-central 2009-10-05 16:08:52 -07:00
Chris Jones
d215e057fe Merge backout 2009-10-02 18:09:39 -05:00
Chris Jones
08de77b6a4 Backed out changeset 8cbc47eee659 2009-10-02 18:09:08 -05:00
Blair McBride
9cdc2ead10 Bug 514327 - Detect outdated plugins and offer upgrade path. ui-r=beltzner, r=dtownsend,josh 2009-10-02 13:26:04 +02:00
Chris Jones
3e5fef214c bug 441324: implement infallible ::operator new(), malloc() and friends. make |new Foo()| infallible, but leave |malloc()| fallible for the time being. r=blassey sr=bsmedberg,vlad 2009-10-01 21:50:09 -05:00
Ben Turner
29c6cc37ec Merge mozilla-central 2009-09-23 13:14:34 -07:00
Rich Walsh
5c1a94f9fe [OS/2] Bug 517880 - Build Break following removal of nsplugindefs.h, r=pweilbacher 2009-09-22 15:49:26 +02:00
Doug Turner
16ce7d7c20 Bug 528429 - MOZ_COMPOSITED_PLUGINS should be disabled when building for Qt. r=vlad 2009-11-13 07:10:53 -08:00
Josh Aas
8c81f341a1 Stop loading plugins with the name pattern "npjava*.dll" on Windows - these are old Java DLLs that won't work in Gecko 1.9.2+. b=527543 r=jst 2009-11-13 04:37:25 -05:00
Dave Townsend
8f787ba4fd Bug 471245: Unpacked extensions inadvertently enable plugins when reading chrome file at startup. r+sr=jst 2009-09-22 08:46:32 +01:00
Ben Turner
66a36315ce Merging mozilla-central once more to hopefully clear windows unit tests 2009-09-20 10:47:21 -07:00
Phil Ringnalda
e62c83fdc6 Bug 495228 - Remove checks for mac MOZ_WIDGET_TOOLKIT, r=ted 2009-09-18 19:59:53 -07:00
Benjamin Smedberg
d44f878b56 Merge mozilla-central into Electrolysis. 2009-09-18 16:47:18 -04:00
timeless@mozdev.org
a57f8826c1 Bug 525980 Fix typos in npapi.h
r=joshmoz
2009-11-04 07:39:43 +13:00
Jory A. Pratt
8abe24e659 Bug 506599 multiple inclusion of nptypes.h causes build error r=joshmoz 2009-11-02 17:41:36 +08:00
Jonathan Griffin
96ff9f6933 Bug 523216. Check for NULL message in NPN_SetException. r=joshmoz 2009-10-30 13:15:22 -07:00
Michael Wu
d38ee96a91 Improve GetURL/PostURL code
Bug 273025 - bad logic results in potential leak xor crash based on flow; v4, (1/2)
r+sr=jst
2009-10-29 01:29:44 +01:00