Commit Graph

312 Commits

Author SHA1 Message Date
Markus Stange
9b5004bdc9 Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=billm,njn
MozReview-Commit-ID: EROfGuYQ6a0
2017-05-30 15:06:14 -04:00
David Parks
0114908c11 Bug 1363290 - Part 3: Proxy win32's SetCursorPos for plugins in chrome process. r=jimm, r=jed
SetCursorPos is used by Flash's relative cursor motion behavior.  It is blocked by the plugin sandbox.  This patch allows it to run by proxying it on the main process.
2017-05-16 14:47:09 -07:00
Phil Ringnalda
f13976f44f Backed out 5 changesets (bug 1330185, bug 1330184) for leaking an nsTArray_base from the plugin process on Win8
Backed out changeset e6f368f2d874 (bug 1330185)
Backed out changeset 2b8d50fcb20f (bug 1330184)
Backed out changeset dbe452a9eebb (bug 1330184)
Backed out changeset e13b9e798e16 (bug 1330184)
Backed out changeset 52489c7eadaf (bug 1330184)

MozReview-Commit-ID: 8L20BZ5E3t2
2017-05-22 19:45:35 -07:00
Markus Stange
5775b5cb1b Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=njn, r=billm
MozReview-Commit-ID: EROfGuYQ6a0
2017-05-22 13:47:02 -04:00
Markus Stange
fb5c50b4d5 Back out bug 1330184 and bug 1330185 because of test failures.
MozReview-Commit-ID: ILD4mevlSU6
2017-05-21 15:11:15 -04:00
Markus Stange
8baa6164cb Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=njn, r=billm
MozReview-Commit-ID: EROfGuYQ6a0
2017-05-21 14:06:50 -04:00
Łukasz Kędziorski
5d6f7cf220 Bug 1357578 - Convert PRCList usage in nsPluginHost to mozilla::LinkedList. r=erahm,r=bsemdberg 2017-05-02 17:12:00 -07:00
Jim Mathies
7e94151cfc Bug 1359450 - Use Flash default wmode handling when Firefox can't support async accelerated rendering. Avoid forcing direct mode in these cases which falls back on windowed layout. r=aklotz
MozReview-Commit-ID: BdCeM7xDk9r
2017-04-25 10:55:48 -05:00
Markus Stange
85eb6f4cac Bug 1321617 - Tell the CrossProcessProfilerController whether a profile is a response to a GatherProfile request or whether it was sent because the process was exiting. r=mconley
MozReview-Commit-ID: BLkaeZqtRhv
2017-04-12 16:44:31 -04:00
Kyle Machulis
ceb4bf3e68 Bug 1350940 - Label Runnables in dom/plugins; r=bsmedberg
MozReview-Commit-ID: DCxeZUj6CEd
2017-03-27 13:35:25 -07:00
Markus Stange
ba275e84c4 Bug 1321907 - Move cross process profiler controlling code from ContentParent and PluginModuleParent into a new class called CrossProcessProfilerController. r=mconley,njn
MozReview-Commit-ID: HY2iWHlDaEy
2017-03-22 21:44:59 -04:00
Gabriele Svelto
30d88a559a Bug 1322611 - After a crash compute the SHA256 hash of a minidump and attach it to the crash ping; r=Ted, nchen
This patch changes the crashreporter client code as well as the crash service
code to compute a SHA256 hash of a crash' minidump file and add it to the
crash ping. The crash service code computes the hash on the fly before handing
over the crash to the crash manager; the crash manager will then add it to the
crash ping. The crashreporter client on the other hand sends the hash via the
ping it generates but it also adds it to the event file so that the crash
manager can pick it up and send it along with its own crash ping. On Fennec
the crashreporter activity takes care of computing the hash.

SHA256 hash computation uses nsICryptoHash in the crash service, the
java.security.MessageDigest class in Fennec, the bundled NSS library in the
crashreporter when running on Windows and Mac and the system-provided NSS
library under Linux. The latter is required because the crashreporter client
uses the system curl library which is linked to NSS and which would thus clash
with the bundled one if used together.

This patch introduces two new methods for the nsICrashService interface:
|getMinidumpForID()| and |getExtraFileForID()|, these reliably retrieve the
.dmp and .extra files associated with a crash and ensure the files exist
before returning. These new methods are used in the CrashService for
processing and will become the only way to reliably retrieve those files
from a crash ID.

MozReview-Commit-ID: 8BKvqj6URcO
2017-02-16 07:36:57 +01:00
Benjamin Smedberg
89b6f2227c Bug 1342141 part B - Use NP_EMBED as the mode for all plugins, whether they are full-page or not, r=jimm
MozReview-Commit-ID: BeB24ux8TEp
2017-02-23 12:37:42 -05:00
Nicholas Nethercote
ea1ea2233a Bug 1340928 (part 12) - Remove profiler_get_gatherer(). r=mstange.
profiler_get_gatherer() exposes ProfileGatherer to the outside world in a way
that makes future changes difficult.

This patch:

- Removes ProfileGatherer.h from the list of headers exported from the
  profiler.

- Removes nsIProfiler.profileGatherer and nsProfiler::GetProfileGatherer().

- Replaces profiler_get_gatherer() with three new functions that provide
  minimal but sufficient access to ProfileGatherer:
  profiler_will_gather_OOP_profile(), profiler_gathered_OOP_profile(), and
  profiler_OOP_exit_profile().

  These functions provide access to the ProfileGatherer in a similar fashion to
  the pre-existing functions profiler_get_profile_jsobject_async() and
  profiler_save_profile_to_file_async()

This significantly reduces the size of the profiler's API surface.
2017-02-22 10:19:53 +11:00
David Parks
4784604438 Bug 1284897 - Hook GetSaveFileNameW/GetOpenFileNameW to record and grant a sandboxed process permission to access user-chosen files. r=jimm 2017-02-08 11:38:40 -08:00
Sebastian Hengst
25e6d08981 Backed out changeset c35afe490583 (bug 1284897) 2017-02-21 23:13:20 +01:00
David Parks
f7818b4465 Bug 1284897 - Hook GetSaveFileNameW/GetOpenFileNameW to record and grant a sandboxed process permission to access user-chosen files. r=jimm 2017-02-08 11:38:40 -08:00
Jim Mathies
b570b8d311 Bug 1340276 - Force wmode=direct for certain Flash objects. r=aklotz
MozReview-Commit-ID: 6WsZL99kUc
2017-02-16 16:13:30 -06:00
Phil Ringnalda
f72d4e4b61 Backed out 5 changesets (bug 1284897) for mozilla::SandboxPermissions::RemovePermissionsForProcess crashes
Backed out changeset 19b2fcee13a9 (bug 1284897)
Backed out changeset a5171791437f (bug 1284897)
Backed out changeset 3ea8b8a18515 (bug 1284897)
Backed out changeset 21497a4e3bde (bug 1284897)
Backed out changeset 12e17d5f0fa9 (bug 1284897)
2017-02-16 22:14:15 -08:00
David Parks
93ff7f87a4 Bug 1284897 - Hook GetSaveFileNameW/GetOpenFileNameW to record and grant a sandboxed process permission to access user-chosen files. r=jimm 2017-02-08 11:38:40 -08:00
David Anderson
e22a919afe Switch PPluginModule from PCrashReporter to shmem-based CrashReportHost/Client. (bug 1338281 part 5, r=billm) 2017-02-15 14:44:30 -08:00
Benjamin Smedberg
699733b057 Bug 1337781 - Force Flash to be windowless on Linux, r=jimm
MozReview-Commit-ID: KuSqj0FwAXg
2017-02-08 09:35:28 -05:00
Carsten "Tomcat" Book
ffc915c2f6 Backed out changeset f4c6758e15f9 (bug 1307708) on developers request 2017-02-09 11:49:38 +01:00
David Parks
5691514b86 Bug 1307708 - Make the GetKeyState IPDL call sync (it was intr). r=jimm
This should avoid destruction messages from deleting the actor while the intr message is awaiting a response.
2017-02-06 11:53:59 -08:00
Andrew McCreight
8f66878a7c Bug 1333915, part 2 - Stop using bridges and spawns in plugins. r=jimm
The old code would do the content process portion of the open by
immediately sending a message back to the content process, but this
has some weird issues with nesting and priorities. Instead of doing
that, I return the endpoint for the content process back to the
original sync call. This requires more code changes, to thread the
endpoint along, but it is conceptually simpler.

Once I removed the bridges and got it working, I was just able to
remove the spawns from the IPDL file and it worked.

MozReview-Commit-ID: 1tfiJrV4jbV
2017-01-25 14:17:17 -08:00
Bill McCloskey
be49fc768f Bug 1332494 - Move TaskCategory definition to xpcom/threads/TaskCategory.h (r=froydnj)
MozReview-Commit-ID: ET43PbGRgxl
2017-01-26 14:45:58 -08:00
Nicholas Nethercote
d2434a7cc6 Bug 1333296 (part 1) - Rename MOZ_ENABLE_PROFILER_SPS as MOZ_GECKO_PROFILER. r=mstange,glandium. 2017-01-24 14:15:12 +11:00
Jim Mathies
578d984323 Bug 1331951 - Remove plugin async drawing work around that landed in bug 1312242. r=bsmedberg
MozReview-Commit-ID: 8OgOLm7HyDT
2017-01-18 09:14:05 -06:00
Tomislav Jurin
9ff3007b90 Bug 1296189 - Replace NS_RUNTIMEABORT("some string literal message") with MOZ_CRASH(). r=froydnj 2016-12-02 13:46:53 -08:00
Bill McCloskey
6c336c782c Bug 1318506 - Label PluginInstance IPC messages with plugin's DocGroup (r=jimm)
The goal here is to assign a DocGroup to every runnable. This patch labels all
IPC message handlers for PPluginInstance with the DocGroup of the plugin
instance's document.

MozReview-Commit-ID: 6OIard9n2GB
2016-12-01 15:00:13 -08:00
Sebastian Hengst
b04fc5f8e5 Backed out changeset 3411c3d9c141 (bug 1318506) 2016-12-01 13:35:23 +01:00
Bill McCloskey
462e5c0660 Bug 1318506 - Label PluginInstance IPC messages with plugin's DocGroup (r=jimm)
The goal here is to assign a DocGroup to every runnable. This patch labels all
IPC message handlers for PPluginInstance with the DocGroup of the plugin
instance's document.

MozReview-Commit-ID: 6OIard9n2GB
2016-11-30 18:01:59 -08:00
Sotaro Ikeda
21e7de124c Bug 1312988 - Separate the recycling allocators for gpu and cpu textures. r=nical 2016-11-14 10:09:39 +01:00
Kan-Ru Chen
1b9dd22e2d Bug 1314254 - Add mozilla::ipc::IPCResult type and convert IPDL handlers to use new return type. r=billm
We will use the new type for the generated IPDL message handler
prototype to make sure correct error handling method is called.

MozReview-Commit-ID: AzVbApxFGZ0
2016-11-15 04:26:00 +01:00
Bill McCloskey
6d64f5c796 Bug 792652 - Remove methods from MessageListener (r=dvander)
With this change, MessageChannel stores mListener as an IToplevelProtocol
rather than a MessageListener (which isn't really a useful concept on
its own). The MessageListener methods are split out to IProtocol and
IToplevelProtocol. MessageListener gets deleted. Some of the inline
functions in MessageChannel had to be moved to MessageChannel.cpp since
IToplevelProtocol isn't defined in MessageChannel.h.
2016-11-08 15:22:36 -08:00
Wes Kocher
9ae70893b6 Backed out 18 changesets (bug 792652) for build bustage on linux64 a=backout CLOSED TREE
Backed out changeset 90eaf6aec002 (bug 792652)
Backed out changeset ddd915ab4a48 (bug 792652)
Backed out changeset 95eff6c45cae (bug 792652)
Backed out changeset 75855b5a9ab9 (bug 792652)
Backed out changeset b658ebaad5d7 (bug 792652)
Backed out changeset 2ba36b8ac60c (bug 792652)
Backed out changeset 94fcd3bf3f34 (bug 792652)
Backed out changeset cf9c4164eb43 (bug 792652)
Backed out changeset 59e6d0a4f35b (bug 792652)
Backed out changeset bdf86b8b9c43 (bug 792652)
Backed out changeset 8edf4b247250 (bug 792652)
Backed out changeset 63a3c8e4016e (bug 792652)
Backed out changeset e3e496eab991 (bug 792652)
Backed out changeset 5a1e3136323a (bug 792652)
Backed out changeset dbbe3a8c00e7 (bug 792652)
Backed out changeset 1829d5358808 (bug 792652)
Backed out changeset 004cd692ba6d (bug 792652)
Backed out changeset 92e7fee81fa2 (bug 792652)
2016-11-08 12:05:28 -08:00
Bill McCloskey
2ec024e91b Bug 792652 - Remove methods from MessageListener (r=dvander)
With this change, MessageChannel stores mListener as an IToplevelProtocol
rather than a MessageListener (which isn't really a useful concept on
its own). The MessageListener methods are split out to IProtocol and
IToplevelProtocol. MessageListener gets deleted. Some of the inline
functions in MessageChannel had to be moved to MessageChannel.cpp since
IToplevelProtocol isn't defined in MessageChannel.h.
2016-11-08 11:32:26 -08:00
Jim Mathies
4b12a798f4 Bug 1312242 - Provide a default bgcolor flash var. Addresses a background transparency problem with transparent flash and async painting. r=aklotz
MozReview-Commit-ID: KEzb1vkkNXG
2016-11-04 12:57:15 -05:00
Jim Mathies
5291c44a59 Bug 1312530 - Force windowless plugin mode in 64-bit builds if async rendering is disabled. r=akotz
MozReview-Commit-ID: LEUdMKm1BNe
2016-10-25 08:10:54 -05:00
Kyle Machulis
d734c1400d Bug 1307694 - Remove reversal of attributes for plugins; r=bsmedberg
MozReview-Commit-ID: 75pULekS9s6
2016-10-20 11:28:02 -07:00
Aaron Klotz
5d33748e0e Bug 1241921: Disable async plugin init regardless of pref; r=jimm
MozReview-Commit-ID: 5cdb9vLONiS
2016-10-17 12:09:21 -06:00
Nathan Froyd
862a7d6649 Bug 1307483 - remove mProtocolCallStack from PluginModuleChromeParent; r=jimm
The last useful references to this were removed in bug 1250046, when we
deleted Shumway-specific IPC support.  All this code is doing now is
taking up space.
2016-10-05 00:04:32 -04:00
David Parks
ae5e8512ae Bug 1251202 - Implement Default Audio Device Notifications for NPAPI plugins on Windows. r=jimm
Adds plugin variables NPPVpluginRequiresAudioDeviceChanges and NPNVaudioDeviceChangeDetails on Windows.
2016-09-19 14:05:41 -07:00
David Anderson
d6259735bc Protect ImageBridgeChild's singleton with a StaticMutex. (bug 1298938 part 5, r=mattwoodrow) 2016-09-13 16:30:57 -07:00
Kyle Machulis
7819d15177 Bug 820831 - Turn on ContentScaleFactor calculation on Windows; r=jimm
MozReview-Commit-ID: 5rqTURsO839
2015-09-17 13:31:34 -07:00
Makoto Kato
8893b79119 Bug 1180684 - Part 2. Hook GetKeyState on plugin process. r=aklotz
MozReview-Commit-ID: 3cCWMYYaTkn
2016-08-22 16:06:50 +09:00
Kan-Ru Chen
a9b19d0584 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES
2016-08-24 14:47:04 +08:00
Kyle Machulis
bc30ae6af3 Bug 1287588 - Fix parameter ordering in embed tags; r=bsmedberg
MozReview-Commit-ID: 75ferxsBTgs
2016-08-18 10:22:03 -07:00
Jim Mathies
38056fbe71 Bug 1283274 - Disable windowless workaround if we detect a flash library that support async rendering. r=aklotz
MozReview-Commit-ID: 3RubBjRoeEa
2016-07-25 15:45:29 -05:00
Wei-Cheng Pan
a87ccbfa5e Bug 1264566 - Part 2: Refactor all usage of FileDescriptor. r=valentin
Callers should use a UniquePtr to hold the platform handle.

MozReview-Commit-ID: 6BWnyAf4b3a
2016-05-27 16:12:51 +08:00