Commit Graph

347 Commits

Author SHA1 Message Date
shindli
f90a73f3c0 Backed out 16 changesets (bug 1402519) for conflicts during merge r=backout on a CLOSED TREE
Backed out changeset 07fcf163241a (bug 1402519)
Backed out changeset c6d2ad45d8e2 (bug 1402519)
Backed out changeset 8a3caca61294 (bug 1402519)
Backed out changeset 01425eae2c48 (bug 1402519)
Backed out changeset cf298d3815de (bug 1402519)
Backed out changeset e1964f4389cd (bug 1402519)
Backed out changeset f405337f3569 (bug 1402519)
Backed out changeset a76356fd3359 (bug 1402519)
Backed out changeset d3bb350d1c34 (bug 1402519)
Backed out changeset 9d3bfd9f932c (bug 1402519)
Backed out changeset e3dd6e5b073f (bug 1402519)
Backed out changeset e801b0c00134 (bug 1402519)
Backed out changeset 8a4139fa5dca (bug 1402519)
Backed out changeset 8d01c14ac1ca (bug 1402519)
Backed out changeset 24e0dcd01898 (bug 1402519)
Backed out changeset f8fdf450613f (bug 1402519)
2017-11-23 00:11:44 +02:00
Gabriele Svelto
44aa02b094 Bug 1402519 - Remove MOZ_CRASHREPORTER directives from dom; r=peterv
MozReview-Commit-ID: 4G2C9y6csvc
2017-10-10 12:43:09 +02:00
David Parks
5f7fac1106 Bug 1411631 - Use ContiguousEnumSerializerInclusive for GetOpenFileName IPC. r=jimm
Use the new helper for serializing enums in IPDL.
2017-11-01 01:59:31 -07:00
Chris Peterson
4434deda7a Bug 1412048 - Replace NS_RUNTIMEABORT("...") with MOZ_CRASH("..."). r=froydnj
And remove unreachable code after MOZ_CRASH().

MozReview-Commit-ID: 6ShBtPRKYlF
2017-10-24 23:30:31 -07:00
Tom Ritter
bf3423ddea Bug 1404035 Address unused result warnings in dom/ipc/ r=smaug
In come cases, we can fail the IPC message, but in one we can't really do anything.

MozReview-Commit-ID: 4vdKIRUOJNN
2017-09-28 12:46:37 -05:00
Benjamin Smedberg
a65df5cd2e Bug 1352567 - Remove plugin IPC code to support stream types other than NP_NORMAL (seekable and/or file streams), r=jimm
MozReview-Commit-ID: FWl2gcpKy6D
2017-10-02 14:54:22 -07:00
Nicholas Nethercote
1a15a0b18a Bug 1382099 - Remove MOZ_WIDGET_GONK from dom/{base,ipc,plugins}. r=mccr8. 2017-07-21 10:52:30 +10:00
Benjamin Smedberg
e441080384 Bug 1381591 - Refactor plugin initialization/performance telemetry to measure the things we care about, r=qdot data-r=rweiss
MozReview-Commit-ID: CZ6AZ64RUt9
2017-07-17 16:31:45 -04:00
dan1bh
8f39802a0d Bug 1352559 - Remove support for plugin-provided streams; NPN_NewStream, PPluginStream and other supporting machinery, r=bsmedberg
Removed API List:
* NPN_NewStream
* NPN_Write
* NPN_DestroyStream
* nsNPAPIStreamWrapper
* nsPluginStreamToFile
* PPluginStream.ipdl

MozReview-Commit-ID: 61dKGct3qGW
2017-07-11 14:27:25 -04:00
Nicholas Nethercote
08599f9062 Backed out changeset cb1548354e0c (bug 1352559, part 3) for causing *many* crashes in Nightly. r=backout 2017-07-17 09:41:29 +10:00
dan1bh
1f3097b1cf Bug 1352559 - Remove support for plugin-provided streams; NPN_NewStream, PPluginStream and other supporting machinery, r=bsmedberg
Removed API List:
* NPN_NewStream
* NPN_Write
* NPN_DestroyStream
* nsNPAPIStreamWrapper
* nsPluginStreamToFile
* PPluginStream.ipdl

MozReview-Commit-ID: 61dKGct3qGW
2017-07-11 14:27:25 -04:00
Sebastian Hengst
b087f8692e Backed out changeset 999aa7b6683d (bug 1352559) 2017-07-12 19:10:50 +02:00
dan1bh
e9cff23d89 Bug 1352559 - Remove support for plugin-provided streams; NPN_NewStream, PPluginStream and other supporting machinery, r=bsmedberg
Removed API List:
* NPN_NewStream
* NPN_Write
* NPN_DestroyStream
* nsNPAPIStreamWrapper
* nsPluginStreamToFile
* PPluginStream.ipdl

MozReview-Commit-ID: 61dKGct3qGW
2017-07-11 14:27:25 -04:00
Sylvestre Ledru
9d4a84d778 Bug 1378712 - Remove all trailing whitespaces r=Ehsan
MozReview-Commit-ID: Kdz2xtTF9EG
2017-07-06 14:00:35 +02:00
Nicholas Nethercote
e358cc86df Bug 1352575 (part 23) - Remove PluginProcessParent::mRunCompleteTaskImmediately. r=jimm.
Because it never gets set true any more.

The patch also removes PluginModuleChromeParent::WaitForIPCConnection().
2017-04-18 16:56:45 +10:00
Nicholas Nethercote
f7aeac13e2 Bug 1352575 (part 22) - PluginModuleParent::mAsyncNewRv. r=jimm. 2017-04-18 16:56:45 +10:00
Nicholas Nethercote
048383e4ce Bug 1352575 (part 21) - Remove PluginModuleParent::mIsNPShutdownPending. r=jimm. 2017-04-18 16:56:45 +10:00
Nicholas Nethercote
e3ca2e41e9 Bug 1352575 (part 19) - Remove PluginModuleParent::mNPInitialized. r=jimm. 2017-04-18 16:56:45 +10:00
Nicholas Nethercote
359128054c Bug 1352575 (part 18) - Remove PluginAsyncSurrogate. r=jimm.
The patch also removes PluginDataResolver and various other things that are no
longer necessary.
2017-04-18 16:56:45 +10:00
Nicholas Nethercote
3896d24cf1 Bug 1352575 (part 16) - Remove PluginModuleChromeParent::mAsyncInitRv. r=jimm. 2017-04-18 16:56:45 +10:00
Nicholas Nethercote
e8f1fe8889 Bug 1352575 (part 15) - Remove PluginModuleChromeParent::mInitOnAsyncConnect. r=jimm. 2017-04-18 16:56:44 +10:00
Nicholas Nethercote
399e6697a7 Bug 1352575 (part 13) - Remove surrogate use when casting. r=jimm. 2017-05-26 15:32:30 +10:00
Nicholas Nethercote
b3ac8bd2e1 Bug 1352575 (part 12) - Remove NP_InitializeResult. r=jimm. 2017-04-18 16:56:44 +10:00
Nicholas Nethercote
b91228b62f Bug 1352575 (part 11) - Remove LoadPluginResult and AssociatePluginId. r=jimm. 2017-04-18 16:56:44 +10:00
Nicholas Nethercote
eac7799fe7 Bug 1352575 (part 10) - Remove PluginModuleChromeParent::mContentParent. r=jimm. 2017-04-18 16:56:44 +10:00
Nicholas Nethercote
e20e423748 Bug 1352575 (part 5) - Remove PluginModuleParent::mIsStartingAsync. r=jimm.
This allows a bunch of other things to be removed too, including
PluginModuleParent::mSurrogateInstances,
PluginModuleChromeParent::sInstantiated, and NS_PLUGIN_INIT_PENDING.

The patch also removes the AsyncPluginInit crash annotation.
2017-04-18 16:56:43 +10:00
Nicholas Nethercote
8feeffcee0 Bug 1352575 (part 4) - Remove dom.ipc.plugins.asyncInit.enabled pref. r=jimm.
The feature is in the process of being removed.
2017-04-18 16:56:43 +10:00
Nicholas Nethercote
541c0182b1 Bug 1352575 (part 3) - Remove PluginModuleChromeParent::mAsyncInitError. r=jimm.
It's unused.
2017-04-18 16:56:43 +10:00
Nicholas Nethercote
35794cec4f Bug 1352575 (part 1) - Remove unused supportsAsyncInit arguments and fields. r=jimm.
The aAllowAsyncInit argument to PluginModuleParent's constructor is unused.
This patch removes it and various other things that are no longer needed once
it is gone.
2017-04-18 16:56:43 +10:00
Bill McCloskey
ce42826bdf Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Nicholas Nethercote
a58025002f Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.
2017-06-22 17:08:53 +10:00
Cervantes Yu
b2491ab85e Bug 1360308 - Part 2: Use callback in CrashReporterHost::GenerateMinidumpAndPair() and up the caller chain. r=gsvelto
This changes CrashReporterHost::GenerateMinidumpAndPair() and up the caller chain to use callbacks so we
may call it synchronously or asynchronously.

MozReview-Commit-ID: 4PQH6cVdOk0
2017-06-22 18:52:58 +08:00
Cervantes Yu
7c616228a2 Bug 1360308 - Part 1: De-templatize CrashReporterHost::GenerateMinidumpAndPair(). r=gsvelto
Cleans up CrashReporterHost::GenerateMinidumpAndPair() and move it to CrashReporterHost.cpp.
Also removes the call to open a privileged process handle and get the already open handle
from GeckoChildProcessHost.

MozReview-Commit-ID: 8wLm1hf8zrJ
2017-06-22 18:52:42 +08:00
Chris Peterson
5406fb785e Bug 1373525 - dom/plugins: Remove unused member function PluginModuleMapping::IsLoadModuleOnStack(). r=jimm
The static variable PluginModuleMapping::sIsLoadModuleOnStack is only accessed within the class PluginModuleMapping and the unused getter IsLoadModuleOnStack() can be removed.

dom/plugins/ipc/PluginModuleParent.cpp:313:5 [-Wunused-member-function] unused member function 'IsLoadModuleOnStack'

MozReview-Commit-ID: 5UCxHZUQCNQ
2017-06-15 00:49:28 -07:00
Markus Stange
45510672c4 Bug 1369859 - Add MOZ_GECKO_PROFILER ifdefs around #includes of ProfilerParent.h. r=njn
MozReview-Commit-ID: HS3BBsrHVHu
2017-06-02 16:03:39 -04:00
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