Граф коммитов

4837 Коммитов

Автор SHA1 Сообщение Дата
Carsten "Tomcat" Book ba466337dd Backed out changeset 4364536ae549 (bug 1343728) 2017-06-28 15:52:04 +02:00
Carsten "Tomcat" Book 6365f16e57 Backed out changeset a1e773337202 (bug 1350633) 2017-06-28 15:52:01 +02:00
Carsten "Tomcat" Book 7918eeee02 merge mozilla-inbound to mozilla-central a=merge 2017-06-28 13:23:29 +02:00
Milan Sreckovic 2a443ce1ef Bug 1337062: Transfer initial gfxVars with SendXPCOMProcessAttributes. Deal with potential (future) race condition. r=dvander,gerald
MozReview-Commit-ID: GYezEAg7ozQ

--HG--
extra : rebase_source : 7771f0e47ec7397117b96e702a620301089c57a1
2017-06-27 17:04:17 -04:00
Masayuki Nakano 71bb543ee5 Bug 1376424 - part1: TabChild should notify TabParent of "request to commit composition" handled r=m_kato
The problem is, only when requesting IME to commit or cancel composition is handled synchronously, TabParent does not send the dispatched eCompositionCommit(AsIs) event to the remote process.  Therefore, TabParent (and ContentCacheInParent) never receives  the message from the remote process.

This patch makes TabChild notifies TabParent of eCompositionCommitRequestHandled special event message after TabChild dispatches eCompositionCommit into the DOM tree.  Then, ContentCacheInParent should decrease mPendingCompositionCount and mPendingEventsNeedingAck as usual composition event messages.

MozReview-Commit-ID: 7ec5HPiE687

--HG--
extra : rebase_source : a9366abf6f8feec2d6ac639fd37f5b5c6ddd9586
2017-06-27 23:41:12 +09:00
Masayuki Nakano a6f874fcf1 Bug 1376424 - part0: Backout the patch for bug 1368554 r=m_kato
TextComposition in the main process is destroyed when the main process sends eCompositionCommit(AsIs) to focused remote process.  Therefore, ContentCacheInParent::mCompositionPendingCount is never 2 or more now.

It may cause ContentCacheInParent::Assign() setting older composition's start offset to current composition's start offset in the main process.

For making uplift the following patch easier, the wrong patch should be backed out first.

MozReview-Commit-ID: IHWc7qZBQtc

--HG--
extra : rebase_source : d3936fa82ed670217b711d15bbb0201a8741501b
2017-06-27 22:02:07 +09:00
Mats Palmgren dfa2a20e6b Bug 1376293 part 2 - Use Lookup instead of Get+Remove, to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: JQEEBkc5vEp
2017-06-28 01:03:15 +02:00
Mats Palmgren 6b66a26ec0 Bug 1376293 part 1 - Remove an unnecessary GetWeak call before Remove, and use Lookup instead of GetWeak+Remove, to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: HaVrGEDB41i
2017-06-28 01:03:14 +02:00
Michael Layzell 3c82b8c224 Bug 1350633 - Remove the Msg_GetWidgetNativeData sync IPC, r=billm, r=jimm
MozReview-Commit-ID: Bql29wgVDZ5
2017-06-27 16:24:48 -04:00
Michael Layzell 31e36ee704 Bug 1343728 - Part 4: Remove the window creation sync IPC calls, r=billm, r=smaug
MozReview-Commit-ID: IWayDUWuRrf
2017-06-27 16:24:48 -04:00
Michael Layzell c7ffb02592 Bug 1343728 - Part 1: Add the ability to temporarially delay remote docshells from becoming active, r=smaug
MozReview-Commit-ID: KAaeu5ETc0x
2017-06-27 16:24:48 -04:00
Bill McCloskey f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Michael Layzell 17143c4e93 Bug 1350633 - Remove the Msg_GetWidgetNativeData sync IPC, r=billm, r=jimm
MozReview-Commit-ID: Bql29wgVDZ5
2017-06-28 12:25:32 -04:00
Michael Layzell 83cff4de78 Bug 1343728 - Part 4: Remove the window creation sync IPC calls, r=billm, r=smaug
MozReview-Commit-ID: IWayDUWuRrf
2017-06-28 12:25:30 -04:00
Michael Layzell 971bb7abef Bug 1343728 - Part 1: Add the ability to temporarially delay remote docshells from becoming active, r=smaug
MozReview-Commit-ID: KAaeu5ETc0x
2017-06-28 12:25:26 -04:00
Carsten "Tomcat" Book 7af37a52bd Merge mozilla-central to mozilla-inbound 2017-06-23 11:44:21 +02:00
Carsten "Tomcat" Book 5f51e5596e merge mozilla-inbound to mozilla-central a=merge 2017-06-23 11:28:19 +02:00
Nicholas Nethercote 58786e1ea7 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.

--HG--
extra : rebase_source : 318d1bc6fc1425a94aacbf489dd46e4f83211de4
2017-06-22 17:08:53 +10:00
Nicholas Nethercote f1364a75ea Bug 1374580 (part 3) - Remove ns{,C}Substring typedefs. r=froydnj.
All the instances are converted as follows.

- nsSubstring  --> nsAString
- nsCSubstring --> nsACString

--HG--
extra : rebase_source : cfd2238c52e3cb4d13e3bd5ddb80ba6584ab6d91
2017-06-20 19:19:52 +10:00
Wes Kocher 3947450ee6 Merge autoland to central, a=merge
MozReview-Commit-ID: DBM5ExEXtYD
2017-06-22 14:10:19 -07:00
Carsten "Tomcat" Book 7fa56f5378 Merge mozilla-central to autoland 2017-06-22 14:11:46 +02:00
Florian Quèze 66f6d259bc Bug 1374282 - script generated patch to remove Task.jsm calls, r=Mossop. 2017-06-22 12:51:42 +02:00
Wes Kocher aef6a66634 Backed out 4 changesets (bug 1343728) for failures in test_group_mouseevents.html a=backout
Backed out changeset 2029cb6bce86 (bug 1343728)
Backed out changeset 0169e09f6030 (bug 1343728)
Backed out changeset 831e95b29f66 (bug 1343728)
Backed out changeset d5630ef01b17 (bug 1343728)

MozReview-Commit-ID: 2RRBTmp5FGj

--HG--
extra : source : 14f84d3b3233a87af51f5ad8302ee24cc2371a01
2017-06-21 17:13:49 -07:00
Wes Kocher 834e060179 Backed out changeset 36d662fbab77 (bug 1350633) for failures in test_group_mouseevents.html a=backout
MozReview-Commit-ID: Gh9eflBppgq

--HG--
extra : source : 79c8da654a9301f57f4c9216eeb2ca1c76d58603
2017-06-21 17:12:20 -07:00
Wes Kocher ac0fd2038c Merge inbound to m-c a=merge
MozReview-Commit-ID: 3LXFVwSoMvs
2017-06-21 17:58:17 -07:00
Michael Layzell f02a75cf86 Bug 1350633 - Remove the Msg_GetWidgetNativeData sync IPC, r=billm, r=jimm
MozReview-Commit-ID: Bql29wgVDZ5
2017-06-21 14:23:16 -04:00
Michael Layzell 746a415780 Bug 1343728 - Part 4: Remove the window creation sync IPC calls, r=billm, r=smaug
MozReview-Commit-ID: IWayDUWuRrf
2017-06-21 14:23:15 -04:00
Michael Layzell e1e38ff7fb Bug 1343728 - Part 1: Add the ability to temporarially delay remote docshells from becoming active, r=smaug
MozReview-Commit-ID: KAaeu5ETc0x
2017-06-21 14:23:10 -04:00
Masayuki Nakano 7ad4ad3aab Bug 1374207 - part1: nsTextEditorState should use mozilla::TextEditor instead of editor interfaces r=smaug
Using concrete class rather than interface classes (nsI*Editor) will allow to reduce QI and some virtual calls.  Therefore, Editor classes should be used as concrete class as far as possible.

Unfortunately, if classes referring editor are initialized via scriptable interface, we cannot do this because nsI*Editor is still not marked as builtinclass.  Therefore, their editor may be implemented by JS.  E.g., inline nsIInlineSpellChecker.init() and nsIDocShell.editor.  Such remaining cases should be fixed after nsI*Editor classes are marked as builtinclass.

Note that this patch also creates nsIdentifierMapEntry.h which is separated from nsDocument.h because ShadowRoot.h needs the class but exposing nsDocument.h to the global and includes it causes bustage on Linux and Android.  Therefore, for fixing the include hell, this patch touches them and ContentChild.cpp.

MozReview-Commit-ID: i6fLWw6Qeo

--HG--
rename : dom/base/nsDocument.h => dom/base/nsIdentifierMapEntry.h
extra : rebase_source : c57bdfc1c13775acdcfd4732d8157d04d6b6613f
2017-06-20 22:57:08 +09:00
Carsten "Tomcat" Book 8a1350b5a6 Backed out changeset 4f6302a98ae4 (bug 1372405)
--HG--
extra : rebase_source : 41632f3158e88e692809731394a683d065a73dfb
2017-06-21 13:59:26 +02:00
Wes Kocher b17932664d Merge m-c to autoland, a=merge
MozReview-Commit-ID: 1dQBCh5pBY6
2017-06-22 14:21:39 -07:00
Milan Sreckovic 012064db78 Bug 1337063: Transfer child's initial ContentDeviceData with SendSetXPCOMProcessAttributes - r=dvander
MozReview-Commit-ID: 8Er44xSDHhb

--HG--
extra : rebase_source : 464a09246ca095ba363f988fb9749680d8518926
2017-06-22 13:45:48 -04:00
Chris H-C 1e2b2d46b4 bug 1369041 - Allow child processes to discard data when overwhelmed r=bsmedberg,gfritzsche f?bsmedberg
It is possible in extreme cases that the Telemetry IPC Accumulator might be
starved long enough that it cannot drain its stored accumulations for a while.

Once we hit 5x the high water mark, start discarding data.

Count each piece and type of discarded data and report it via a custom IPC
message.

MozReview-Commit-ID: JayRpa5QPec

--HG--
extra : rebase_source : eded449c932ced64bdb64e9da1a989407f4f2daf
2017-06-09 09:53:42 -04:00
Carsten "Tomcat" Book 95c2137595 Merge mozilla-central to mozilla-inbound 2017-06-22 14:10:35 +02:00
Cervantes Yu 05b9a6c854 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 e7ad561c4e 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
Wes Kocher bb24138b9d Merge m-c to inbound, a=merge
MozReview-Commit-ID: CaSKFN9T7N4
2017-06-21 18:05:27 -07:00
Wes Kocher b9d43d4afd Backed out 4 changesets (bug 1343728) for failures in test_group_mouseevents.html a=backout
Backed out changeset 2029cb6bce86 (bug 1343728)
Backed out changeset 0169e09f6030 (bug 1343728)
Backed out changeset 831e95b29f66 (bug 1343728)
Backed out changeset d5630ef01b17 (bug 1343728)

MozReview-Commit-ID: 2RRBTmp5FGj
2017-06-21 17:13:49 -07:00
Wes Kocher 0439cd545d Backed out changeset 36d662fbab77 (bug 1350633) for failures in test_group_mouseevents.html a=backout
MozReview-Commit-ID: Gh9eflBppgq
2017-06-21 17:12:20 -07:00
Kate McKinley 396962011a Bug 1363546 - Store and report HSTS upgrade source r=francois,keeler,mayhemer p=francois
Add a field to the HSTS cache which indicates the source of the HSTS
entry if known, from the preload list, organically seen header, or HSTS
priming, or unknown otherwise. Also adds telemetry to collect the source
when upgrading in NS_ShouldSecureUpgrade.

MozReview-Commit-ID: 3IwyYe3Cn73

--HG--
extra : rebase_source : 9b8daac3aa02bd7a1b4285fb1e5731a817a76b7f
2017-05-23 15:31:37 -07:00
Bill McCloskey 6b3e84ed5f Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
Mats Palmgren 5b7c81e34b Bug 1372317 part 2 - Replace LookupRemoveIf() calls with Lookup() + entry.Remove() where needed. r=froydnj
MozReview-Commit-ID: AoRNdbzh66c
2017-06-18 17:07:54 +02:00
Sebastian Hengst adb899a58e Backed out changeset 5573f2f7d796 (bug 1343728) for failing various tests, e.g. mochitest test_animations_reverse.html. r=backout on a CLOSED TREE 2017-06-16 22:21:45 +02:00
Sebastian Hengst 7e1b1cf069 Backed out changeset 05a5f9d8249f (bug 1343728) 2017-06-16 22:20:37 +02:00
Sebastian Hengst e8cca2e7cf Backed out changeset 956306ea34f3 (bug 1350633) 2017-06-16 22:20:32 +02:00
Michael Layzell 6648f5c781 Bug 1350633 - Remove the Msg_GetWidgetNativeData sync IPC, r=billm, r=jimm
MozReview-Commit-ID: Bql29wgVDZ5
2017-06-16 14:59:35 -04:00
Michael Layzell c0d7319a4f Bug 1343728 - Part 3: Remove the window creation sync IPC calls, r=billm, r=smaug
MozReview-Commit-ID: IWayDUWuRrf
2017-06-16 14:59:34 -04:00
Michael Layzell 67f704555d Bug 1343728 - Part 1: Add the ability to temporarially delay remote docshells from becoming active, r=smaug
MozReview-Commit-ID: KAaeu5ETc0x
2017-06-16 14:59:31 -04:00
domfarolino@gmail.com d4253766db Bug 1274663 - Expose API to trigger device reset. r=dvander
--HG--
extra : rebase_source : 5a9d2757f8e7378083ce42131d5a250027569814
2017-06-15 14:34:00 -04:00
Michael Layzell b24cba603e Bug 1369627 - Part 2: Send DimensionInfo down to the content process synchronously when creating a new window, r=smaug
MozReview-Commit-ID: GlzJ491RLUE
2017-06-15 14:34:48 -04:00
Andrew Osmond 27eaaaed2f Bug 1365927 - Part 4. Replace PCompositorBridge integration hooks with PCompositorManager. r=dvander 2017-06-14 11:39:59 -04:00
Gabor Krizsanits 98fc89bfe4 Bug 1364849 - Recycle short lived content processes. r=mrbkap
To prevent addons or other code to rapidly create and destroy content processes
under various conditions, we let the preallocated process manager to reuse short
lived content processes.
2017-05-30 13:46:41 +02:00
Marco Castelluccio 45757ddb64 Bug 1363469 - Mark RecvShareCodeCoverageMutex as 'override'. r=me
--HG--
extra : rebase_source : 1c9f4b6b9de720d1dc0adff4f54f6a26d9d5130c
2017-06-14 10:15:41 +01:00
Marco Castelluccio 42f83ca8dc Bug 1363469 - Define signal handlers to dump and reset coverage counters. r=froydnj,kanru
--HG--
extra : rebase_source : 8fa73f2bfd1eab95caee891d6d68090b58c3ba67
extra : histedit_source : 7b7c633ebecc71508e4c0a4d1161104a511869c5%2C61fefafbedb869fffddb8182d8bfac29108ee1bb
2017-06-14 09:50:44 +01:00
Mats Palmgren 2ee1457c5b Bug 1371952 - Use LookupForAdd/LookupRemoveIf to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: 5hprMT4Gc42
2017-06-14 01:54:26 +02:00
Wes Kocher bcf1a1c32e Backed out 6 changesets (bug 1365927) for build failures in ipc_message_utils.h a=backout CLOSED TREE
Backed out changeset 11fc0da380a2 (bug 1365927)
Backed out changeset 9f1dee5a6c42 (bug 1365927)
Backed out changeset f4954c824f5c (bug 1365927)
Backed out changeset 144ac6cc76f8 (bug 1365927)
Backed out changeset 961e782cf7c7 (bug 1365927)
Backed out changeset 12a093fb86a4 (bug 1365927)

MozReview-Commit-ID: 6CDxqOJzMjE
2017-06-13 12:45:03 -07:00
Andrew Osmond c17a8c1ea1 Bug 1365927 - Part 4. Replace PCompositorBridge integration hooks with PCompositorManager. r=dvander 2017-06-13 15:19:36 -04:00
Ryan Hunt fcb54217c6 Bug 1371527 - Add LayersMessageUtils for IPC serialization of mozilla::layers structs. r=dvander
MozReview-Commit-ID: 7UAtrnnlSqI

--HG--
rename : gfx/ipc/GfxMessageUtils.h => gfx/layers/ipc/LayersMessageUtils.h
extra : rebase_source : 99abcb49ede377e5c31440b2d21a5bd79cda65e0
extra : amend_source : d1820fb6e7aee5e0dbcc83242e9264d8f4e7a4d0
2017-06-08 23:32:13 -05:00
Masayuki Nakano ec9ae17b0c Bug 1368554 ContentCacheInParent::mPendingCompositionCount should be decreased when TextCompositin which has dispatched composition events to corresponding remote process r=m_kato
ContentCacheInParent::mPendingCompositionCount is now managed with composition events which TabParent received. However, TextComposition doesn't dispatch composition events after coming request to commit active composition.  Therefore, composition is committed forcibly in a remote process over 255 times, the main process crashes.

It's the safest way to use TextComposition to manage ContentCacheInParent::mPendingCompositionCount.

MozReview-Commit-ID: DEhzYcK1zcW

--HG--
extra : rebase_source : a47891b1d620bbe4e380e73134ec6da5d21f4ea9
2017-06-10 02:42:16 +09:00
Alex Gaynor fb7715626d Bug 1370438 - The MOZ_DISABLE_CONTENT_SANDBOX environment variable now works on macOS and is used in the xpcshell tests; r=haik
This environment variable works on both Windows and Linux for force-disabling
the content sandbox, and now does so on macOS as well.

The xpcshell tests force disable the sandbox because they do things like bind()
sockets, which is not compatible with the content sandbox. This is needed now
because bug 1358223 was force upgrading the sandbox from level 0 (disabled) to
level 1 on beta channel, which caused breakage.

MozReview-Commit-ID: 5DGxtoDLp0C

--HG--
extra : rebase_source : 87edd138e8b711eace5cb8103c67feae0361e148
2017-06-07 15:30:09 -04:00
Stephen A Pohl 630acd56de Bug 1364984 - Ensure that our sandbox and tests can handle temp directory paths using symlinks on macOS. r=haik,aswan 2017-06-07 20:40:58 -04:00
Aaron Klotz bdf95e95b3 Bug 1371051 - Modify ContentParent to only initialize Windows a11y on Beta or Release when e10s is force-enabled; r=jimm
MozReview-Commit-ID: H0gMM2TlfpY

--HG--
extra : source : 8c3d4d8fbb32a66fd521b5dda185f02e24ab3a02
extra : histedit_source : bd06ca54bf993eba750acda074b5a8e1f1a5ba31
2017-03-08 11:28:09 -07:00
Aaron Klotz 230ddb60a5 Bug 1368571: Modify handler and interceptor marshaling code so that it strips out any handlers from proxies that are destined for non-Gecko processes; r=jimm
MozReview-Commit-ID: A1lCqvbQYAF

There is no clean API-based solution to this, so instead I went grovelling
through the DCOM wire protocol and was able to write a function that converts
handler OBJREFs into standard OBJREFs.

See also:
https://msdn.microsoft.com/en-us/library/cc226801

--HG--
extra : rebase_source : a650055c4adda3a1d99262e47f2b463074c6b935
2017-06-06 17:35:51 -06:00
Michael Layzell b0be882522 Bug 1365032 - Part 1: Allow changing processes when opening a new window with noopener, r=smaug
MozReview-Commit-ID: CXKjDxmoXVH
2017-06-07 12:54:59 -04:00
Michael Layzell e9a9541ee7 Bug 1368046 - Part 2: Propagate OriginAttributes across processes for RecvCreateWindowInDifferentProcess, r=smaug
MozReview-Commit-ID: 8ok4DI9zgfR
2017-06-07 12:54:57 -04:00
Michael Layzell ac7ba92fd5 Bug 1368046 - Part 1: Propagate window.name across processes for RecvCreateWindowInDifferentProcess, r=smaug
MozReview-Commit-ID: 6xmLN9pbCKd
2017-06-07 12:54:53 -04:00
Christoph Kerschbaumer 86374cab11 Bug 1369014: Do not pass explicitly pass a triggeringPrincipal within nsDocShellTreeOwner::HandleEvent. r=smaug
--HG--
extra : rebase_source : 832b69c0edec7f004afdf410e231adb660df0769
2017-06-07 14:25:46 +02:00
Andrea Marchesini 44e8750e68 Bug 1366356 - Decrease the process priority of content processes that are not running a foreground tab - part 2 - enabled if the platform specific code is ready, r=smaug 2017-06-07 09:59:00 +02:00
Andrea Marchesini 61f1dc1bf7 Bug 1366356 - Decrease the process priority of content processes that are not running a foreground tab - part 1 - visibility logic, r=smaug 2017-06-07 09:59:00 +02:00
Kyle Machulis 13959a88ce Bug 1337058 - Remove FindPlugins IPC message; r=bsmedberg 2017-06-06 18:29:32 -07:00
Ryan VanderMeulen 4b1082a507 Backed out changeset 0ff4ad45f99c (bug 1337058) for causing bug 1370237.
--HG--
extra : rebase_source : 3ed4d5a41898ead386f8a75b0d2f7be1899cf767
2017-06-05 20:14:55 -04:00
Alex Gaynor fe791fe36e Bug 1369764 - in the macOS sandbox, allow reads from .app/Contents/; r=haik
This permits NSS to load libsoftokn3.dylib, even when the rest of the file
system's access is removed (as is the goal for the content sandbox level 3).
This is needed for WebCrypto.

MozReview-Commit-ID: Bh54b87zIjY

--HG--
extra : rebase_source : e1fa59648d683e97a3bc1310ac1c362009f657f8
2017-06-02 11:59:43 -04:00
Gabriele Svelto 43c10532d4 Bug 1353168 - Add a crash annotation to distinguish between web, file and extension content processes; r=bsmedberg
This adds the RemoteType annotation to a content crash report so that we can
distinguish between content processes that crashed while running remote, local
or extension code. The annotation is passed along the others to Socorro by the
crashreporter and is also whitelisted for inclusion in the crash ping.

MozReview-Commit-ID: 4avo0IWfMGf

--HG--
extra : rebase_source : 8d03f7e166b5762a5ce7cab13c2101302b4f1d2f
2017-06-01 11:16:11 +02:00
Markus Stange 26469737d1 Bug 1369859 - Add MOZ_GECKO_PROFILER ifdefs around #includes of ProfilerParent.h. r=njn
MozReview-Commit-ID: HS3BBsrHVHu

--HG--
extra : rebase_source : b8439920e82f067bb1a05d513d029363a8c2a24e
2017-06-02 16:03:39 -04:00
Kris Maglione 3f8c999795 Bug 1362462: Fallback to main document widget for frames which haven't been inserted yet. r=mconley
MozReview-Commit-ID: Ayr2kQ9KqbW

--HG--
extra : rebase_source : db78c2c13f87357f64085685629c0e2f96a5acbf
2017-05-29 13:16:23 -07:00
Kyle Machulis 2902c3f037 Bug 1337058 - Remove FindPlugins IPC message; r=bsmedberg
MozReview-Commit-ID: GQVHEeQp1dx

--HG--
extra : rebase_source : d421a613434be2bcca1120cfffb92ed9f20ba9d4
2017-06-01 15:33:23 -07:00
Peter Van der Beken 3a9a9c99de Bug 1363323 - Add TabGroup support to PContentBridge too. r=billm.
--HG--
extra : rebase_source : 8e2df03909c6ccf93d8cb81095c0826bce0e0616
extra : source : e2e64e85d768eb78a1873866bafab0cd863cd2c3
2017-05-02 11:57:51 +02:00
Peter Van der Beken 2310b3bd39 Bug 558184 - Part 8 - Load js plugins in a separate process. r=billm.
Every JS plugin is assigned a unique ID. When an instance of a JS plugin is created the
frame loader that we use to load the plugin's handler URI will create a special
TabContext. This TabContext causes the ContentParent to use the process for this specific
JS plugin (creating one if it hasn't already) when it creates the PBrowser actors.
This causes the iframes for all the instances of a specific JS plugin to be grouped in the
same process.

--HG--
extra : rebase_source : c39560bdf66cda1a005c7b823b3a46e4734878a4
extra : source : 9cba1db527c7eed4371c9f4caf96fd942608cab6
2017-05-29 12:38:46 +02:00
Peter Van der Beken f7f426524e Bug 558184 - Part 7 - Keep track of the content parent that opened a tab so that ContentProcessManager::GetTopLevelTabParent can walk up to the top level tab parent for a JS plugin tab child. r=kanru.
--HG--
extra : rebase_source : 9859cdde73686a8d1405f559842cd9802d579150
extra : source : 1d5fc5a0381a5fca9caa00e4aa0420e40ad378fc
2017-01-16 21:15:11 +01:00
Peter Van der Beken cb4d3a4725 Bug 558184 - Part 6 - Return fake plugins in e10s too. r=bz.
--HG--
extra : rebase_source : 262a496b92925dd29d5a39f58e606ef386558dc0
extra : source : d0b23431992ef9a66d9c93a173e766cdaea68082
2015-05-21 15:15:08 +02:00
Carsten "Tomcat" Book ec17d16219 Merge mozilla-central to mozilla-inbound 2017-06-01 13:56:11 +02:00
Gabriele Svelto 3148018ed7 Bug 1359326 - Run the minidump analyzer directly from the CrashService code; r=bsmedberg
This patch removes the C++ code used to run the minidump analyzer when a
content process crashes, and replaces it with JS code within the CrashService
object. This removes the need for a separate shutdown blocker in C++ code and
allows end-to-end testing of the crash service functionality. Additionally
the exception handler code can be simplified since it's now only used to run
the crash reporter client.

The test added to test_crash_service.js covers computing the minidump SHA256
hash (bug 1322611) and of the minidump analyzer itself (bug 1280477).

MozReview-Commit-ID: LO5w839NHev
2017-05-11 14:03:50 +02:00
Andrea Marchesini dea0e67b26 Bug 1368009 - Get rid of activity-opened/activity-closed observer, r=gsvelto 2017-06-01 08:29:02 +02:00
Andrea Marchesini f9b3992646 Bug 1368941 - Remove gonk specific code from ProcessPriorityManager, r=gsvelto 2017-05-31 21:23:52 +02:00
Andrea Marchesini 4c5700d3ed Bug 1369010 - Remove dead code in ContentParent.{cpp,h}, r=qdot 2017-05-31 21:17:24 +02:00
Andrea Marchesini da7aba03b1 Bug 1368712 - Get rid of nsIBrowserElementAPI.{set,get}Visible, r=kanru 2017-05-31 21:15:23 +02:00
Markus Stange e2336b07a8 Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=billm,njn
MozReview-Commit-ID: EROfGuYQ6a0

--HG--
extra : rebase_source : be0aa1b9c7963882e8e7d47964f2da5b670ab10a
extra : intermediate-source : e6f368f2d8741f2a9655b288d49b59fbbd6b90b7
extra : source : 51cdc2541486d5ddf2d385ec0459a9ec38b8775b
2017-05-30 15:06:14 -04:00
Ryan VanderMeulen c01026a3da Merge m-c to inbound. a=merge 2017-05-30 12:58:23 -04:00
Ryan VanderMeulen 9289913a09 Merge inbound to m-c. a=merge 2017-05-30 12:39:46 -04:00
sotaro 3e55c4713f Bug 1366915 part 1 - Remove pipeline id allocation with IPC MozPromise r=nical 2017-05-30 09:59:29 +09:00
Andrea Marchesini c1c91c120d Bug 1368666 - Get rid of screen-state-changed observer in ProcessPriorityManager, r=gsvelto 2017-05-30 16:27:12 +02:00
Christoph Kerschbaumer 3fc12a8c6e Bug 1363977 - Have loadTabs() provide the correct triggeringPrincipal. r=gijs,smaug 2017-05-29 21:32:21 +02:00
Carsten "Tomcat" Book bdfe9a25bf Backed out changeset 2b92af4575ae (bug 1357386) 2017-05-30 08:51:22 +02:00
Christoph Kerschbaumer 74a7c96cd0 Bug 1357386: Have loadTabs() provide the correct triggeringPrincipal. r=gijs,smaug 2017-05-30 08:31:08 +02:00
Andrea Marchesini 9efa4e6493 Bug 1368029 - Remove LRU priority support from ProcessPriorityManager, r=gsvelto 2017-05-26 17:50:17 +02:00
Andrea Marchesini 12d75b483c Bug 1368012 - Get rid of audio-channel-process-changed observer in ProcessPriorityManager, r=gsvelto 2017-05-26 17:49:55 +02:00
Eden Chuang 68cf4559f8 Bug 1345361 - PaymentRequest constructor implementation. r=baku 2017-05-26 01:50:32 +08:00
Ryan VanderMeulen df9dd3967c Backed out changeset 437d6df1859c (bug 1345361) for ESLint failures. 2017-05-25 18:05:15 -04:00
Eden Chuang 80717194b1 Bug 1345361 - PaymentRequest constructor implementation. r=baku 2017-05-26 01:50:32 +08:00
Bill McCloskey ab129f71c8 Bug 1366845 - Use XPCOM threads for hang monitor (r=mrbkap)
MozReview-Commit-ID: 3zMWYDATDch
2017-05-24 11:11:28 -07:00
Andrea Marchesini eaa44dbb26 Bug 1359718 - Get rid of PBlob - part 4 - PBlob DOMTypes, r=smaug 2017-05-23 18:06:22 +02:00
Andrea Marchesini 281c7e8cdd Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini 28479706ea Bug 1359718 - Get rid of PBlob - part 0 - remove PMemoryStream, r=smaug 2017-05-23 18:00:30 +02:00
Ryan VanderMeulen 0bd37c1ea1 Merge inbound to m-c. a=merge 2017-05-23 18:12:57 -04:00
Ehsan Akhgari 1040ee9f65 Bug 1347035 - Store the maximum touch points for each tab child on the object instead of querying it synchronously from the parent actor when neeeded; r=smaug ipc-r=kanru 2017-05-23 17:00:09 -04:00
Mike Conley a6e4cd7b77 Bug 1362866 - Get rid of MozTabChildNotReady event and all of its required infrastructure. r=billm
This event is no longer necessary, since checking nsITabParent.hasPresented is enough to know
if we need to blank out the tab or not.

MozReview-Commit-ID: 445XMqhorxC

--HG--
extra : rebase_source : 1a05de827502c409d979a621471978b08ce39fb2
2017-05-07 21:26:08 -04:00
Georg Fritzsche 31c702afef Bug 1361661 - Part 2 - Make Telemetry IPC code pass around Telemetry::ProcessID. r=dexter
Switching to Telemetry::ProcessID allows us to break out extension process data from the content process data.
2017-05-23 13:47:58 +07:00
Ryan VanderMeulen 242f4b304d Merge m-c to autoland. a=merge
CLOSED TREE
2017-05-31 20:50:21 -04:00
Alex Gaynor d27dc0ba0b Bug 1358223 - Part 1 - On Windows and macOS hardcode the minimum content sandbox level at 1. r=bobowen,haik,jimm
If the "security.sandbox.content.level" preference is set to a value less than
1, all consumers will automatically treat it as if it were level 1. On Linux and
Nightly builds, setting the sandbox level to 0 is still allowed, for now.

MozReview-Commit-ID: 9QNTCkdbTfm

--HG--
extra : rebase_source : cd5a853c46a5cd334504b339bef8df30a3cabe51
2017-05-12 17:04:42 -04:00
Sebastian Hengst fd03aa5bc8 Backed out changeset 4e283b54baa6 (bug 1358223) for build bustage on Android at dom/ipc/ContentChild.cpp:21. r=backout 2017-05-31 21:34:13 +02:00
Alex Gaynor 39f34ea898 Bug 1358223 - Part 1 - On Windows and macOS hardcode the minimum content sandbox level at 1. r=bobowen,haik,jimm
If the "security.sandbox.content.level" preference is set to a value less than
1, all consumers will automatically treat it as if it were level 1. On Linux and
Nightly builds, setting the sandbox level to 0 is still allowed, for now.

MozReview-Commit-ID: 9QNTCkdbTfm

--HG--
extra : rebase_source : 1a26ffc5b9f80e6df4c37c23f506e907ba44053a
2017-05-12 17:04:42 -04:00
Sebastian Hengst 3743249da2 Backed out changeset 3ac94ff745fc (bug 1359718) for bustage in IPCBlobInputStreamChild.cpp. r=backout on a CLOSED TREE 2017-05-23 19:13:14 +02:00
Sebastian Hengst 4ac10ab053 Backed out changeset c3251f5022dd (bug 1359718) 2017-05-23 19:12:25 +02:00
Sebastian Hengst 11edd0b86c Backed out changeset 1b6c07b71ba4 (bug 1359718) 2017-05-23 19:12:15 +02:00
Andrea Marchesini 785d0e9d03 Bug 1359718 - Get rid of PBlob - part 4 - PBlob DOMTypes, r=smaug 2017-05-23 18:06:22 +02:00
Andrea Marchesini f512688b0b Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini 9106ae7b59 Bug 1359718 - Get rid of PBlob - part 0 - remove PMemoryStream, r=smaug 2017-05-23 18:00:30 +02:00
Sebastian Hengst 2ac2023c15 Backed out changeset c92612ac17d3 (bug 1359718) for bustage in IPCBlobInputStreamChild.cpp. r=backout on a CLOSED TREE 2017-05-23 18:35:24 +02:00
Sebastian Hengst 89e8ea64b1 Backed out changeset 537abc431472 (bug 1359718) 2017-05-23 18:34:40 +02:00
Sebastian Hengst 02595acf8d Backed out changeset 5684176c7662 (bug 1359718) 2017-05-23 18:34:29 +02:00
Andrea Marchesini 673df9c262 Bug 1359718 - Get rid of PBlob - part 4 - PBlob DOMTypes, r=smaug 2017-05-23 18:06:22 +02:00
Andrea Marchesini 7db3365daf Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini af2f7fcbf5 Bug 1359718 - Get rid of PBlob - part 0 - remove PMemoryStream, r=smaug 2017-05-23 18:00:30 +02:00
Phil Ringnalda 6368ef89e2 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
Yoshi Huang ccb4b5db4c Bug 1365166 - rename security.data_uri.inherit_security_context to security.data_uri.unique_opaque_origin. r=smaug, ckerschb
Originally the pref is called security.data_uri.inherit_security_context, so the pref is default on.
And when we finish this feature, we turn it off.
To avoid causing confusion in the future, perhaps we should rename it and make the pref default off.
2017-05-23 09:02:05 +08:00
Markus Stange 9bf6b534a2 Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=njn, r=billm
MozReview-Commit-ID: EROfGuYQ6a0

--HG--
extra : rebase_source : 3495ccc7700703cc587f571dfc12e46a682c29a2
extra : source : 51cdc2541486d5ddf2d385ec0459a9ec38b8775b
2017-05-22 13:47:02 -04:00
Sebastian Hengst 42925f8817 Backed out changeset 8fd3861205d1 (bug 1361661) 2017-05-22 20:40:22 +02:00
Georg Fritzsche 057ea3f2f7 Bug 1361661 - Part 2: Make Telemetry IPC code pass around Telemetry::ProcessID. r=dexter
Switching to Telemetry::ProcessID allows us to break out extension process data from the content process data.

--HG--
extra : rebase_source : ab334ad33b879dce373f810b452b73747ba82109
extra : source : 9cf5185e6d6fd15b1dd35b1552317ebd5ff258ed
2017-05-22 15:40:58 +07:00
Sebastian Hengst b3a2c130d0 Backed out changeset 9cf5185e6d6f (bug 1361661) 2017-05-22 16:19:26 +02:00
Georg Fritzsche 0a9d674afd Bug 1361661 - Part 2: Make Telemetry IPC code pass around Telemetry::ProcessID. r=dexter
Switching to Telemetry::ProcessID allows us to break out extension process data from the content process data.
2017-05-22 15:40:58 +07:00
btian de5fa4f269 Bug 1299390 - part 5: Remove useless AudioChannelService code. r=alwu
Changes:
- remove code addressed by reviewer
- remove PContent.ipdl, PBrowser.ipdl, and ProcessPriorityManager code
  that relates only to removed AudioChannelService methods
- correct test case listening to event from removed code
- remove useless test case files

MozReview-Commit-ID: I96nR8zTXJt

--HG--
extra : rebase_source : 127876c672744811c025ca55839ff2e8a06b1fce
2017-05-18 09:51:53 +08:00
btian eb73e59657 Bug 1299390 - part 2: Remove AudioChannelService methods required by BrowserElementAudioChannel only. r=alwu,baku
Changes:
- remove nsIAudioChannelService methods
- remove method AudioChannelService::RefreshAgentsVolumeAndPropagate and IPC method AudioChannelChangeNotification
- remove workaround for bug 1183033

MozReview-Commit-ID: BqlXYVhgrat

--HG--
extra : rebase_source : 64905901d645aea801b93e742472ac67ff7fb49e
2017-05-18 09:31:00 +08:00
Andrew McCreight 05d8bb3c65 Bug 989373, part 1 - Remove pref for reusing globals with JSMs. r=kmag
Removing support for this preference means that mReuseLoaderGlobal
will always be false, which lets us eliminate that field, and remove a
lot of code.

This also means that false is always passed to
PrepareObjectForLocation for aReuseLoaderGlobal.

ReadCachedFunction is no longer used, so it is deleted.

MozReview-Commit-ID: 5JD24EYVcQf

--HG--
extra : rebase_source : 3b23b4b8d2b1a2f6a53223477afb4cb13b8a671c
2017-05-15 14:33:21 -07:00
Ryan VanderMeulen 96eca59299 Merge m-c to autoland. a=merge 2017-05-19 12:26:48 -04:00
Masayuki Nakano 85a1d561a2 Bug 1339543 part 6 PBrowser::RequestNativeKeyBindings() should retrieves edit commands only for specified type r=smaug
PBrowser::RequestNativeKeyBindings() is used only when somebody tries to
execute native key bindings for synthesized keyboard events.  Therefore, it
doesn't need to retrieve edit commands for all editor types.  Instead, it
should take the editor type and just return the edit commands for it.

MozReview-Commit-ID: HF4Gz99SBQP

--HG--
extra : rebase_source : e332d2ef5ae36949a9a362d8f95c5d427c9812e7
2017-05-19 18:46:02 +09:00
Masayuki Nakano 872f694c63 Bug 1339543 part 4 Change nsIWidget::ExecuteNativeKeyBinding() to nsIWidget::GetEditCommands() which just retrieves edit commands for the type r=smaug
Now, nsIWidget::ExecuteNativeKeyBinding() isn't used by anybody for executing
edit commands.  Instead, they need array of edit commands for the key
combination.  So, the method should be renamed to GetEditCommands() and just
return edit commands as an array.

MozReview-Commit-ID: 4G0B1lJ8Lbe

--HG--
extra : rebase_source : 4a5829281d59677c773950c34d91a1cd8074d243
2017-05-19 17:49:41 +09:00
Masayuki Nakano 730193bdb6 Bug 1339543 part 2 eKeyPress event should have edit commands for all editor types when it's dispatched to a remote process r=smaug
When eKeyPress event is dispatched from TabParent to a remote process, it
should store edit command for all editor types.  Then, copied
WidgetKeyboardEvent in the remote process doesn't need to request the edit
commands when its ExecuteEditCommands() is called.

Note that this patch also changes a automated test, browser_bug1316330.js,
that uses nsIDOMWindowUtils.dispatchDOMEventViaPresShell() to dispatch
repeated keyboard events in the tab.  However, it should use synthesizeKey()
to emulate everything of native keyboard events and the API can dispatch
repeated keyboard events too.  (And the test has a bug.  It tries to wait 0.5
sec when every keydown or keypress event.  However, it fails since startTime
is never initialized.  This patch fixes this bug too.)

MozReview-Commit-ID: IYhyxqH3Ch8

--HG--
extra : rebase_source : 0db911e8e6ea7fc537bda76f4cc0f8952cc13dd2
2017-05-19 17:24:20 +09:00
Carsten "Tomcat" Book 6bd33f52d5 merge mozilla-inbound to mozilla-central a=merge 2017-05-17 11:16:52 +02:00
Andrea Marchesini 24bdb3ece3 Bug 1322316 - Split SessionStorage and LocalStorage implementation - part 5 - Shared broadcasting of changes, r=asuth 2017-05-17 07:01:14 +02:00
Stephen A Pohl 99336e02ef Bug 429824: Properly forward native OSX events to the native menu bar if they haven't been handled by the child process in e10s. r=mstange,masayuki 2017-05-15 22:59:35 -04:00
Christoph Kerschbaumer e4f38c8d7c Bug 1362993 - Rewrite gBrowser.addTab() to use BrowserTestUtils.addTab(). r=florian 2017-05-15 21:49:50 +02:00
Nathan Froyd c1d1748428 Bug 1359490 - add an event loop spinning abstraction function; r=gerald
This function is arguably nicer than calling NS_ProcessNextEvent
manually, is slightly more efficient, and will enable better auditing
for NS_ProcessNextEvent when we do Quantum DOM scheduling changes.
2017-05-15 09:34:19 -04:00
Kris Maglione 589a82d7ba Bug 1361900: Part 6 - Add content process support for the script preloader. r=erahm,gabor
MozReview-Commit-ID: 6hDQAI52bKC

--HG--
extra : rebase_source : 46e8d5ed5965e483fa4b0bd8f6f4403e0bb771dc
extra : source : 4227bcda00babd2d5980dca3b42cb4b467da38c4
2017-05-02 17:17:52 -07:00
Sebastian Hengst 0f6e08c578 Backed out changeset 4227bcda00ba (bug 1361900) 2017-05-13 18:53:30 +02:00
Kris Maglione 2a49ee963d Bug 1361900: Part 6 - Add content process support for the script preloader. r=erahm,gabor
MozReview-Commit-ID: 6hDQAI52bKC

--HG--
extra : rebase_source : a7a32c6ebca0ce1b6449030e33656a9d416e910e
2017-05-02 17:17:52 -07:00
Andrew McCreight 099723178a Bug 1365086, part 3 - Make nsMessageManagerScriptExecutor::mGlobal into a raw pointer. r=smaug
MozReview-Commit-ID: JdLV3wIB1gj

--HG--
extra : rebase_source : 6580a4325633e723aff3a37f58c5fc0ccb163ab2
2017-05-15 13:46:28 -07:00
Andrew McCreight ffae1f697d Bug 1365086, part 2 - Add unlink method for nsMessageManagerScriptExecutor. r=smaug
MozReview-Commit-ID: 66qpza5yEZT

--HG--
extra : rebase_source : 290a4102a1e44e6c1a6cf63c48e931130970bd93
2017-05-15 13:05:18 -07:00
Andrew McCreight 7a82b9da0e Bug 1365086, part 1 - Make nsMessageManagerScriptExecutor::GetGlobal return a JSObject pointer. r=smaug
MozReview-Commit-ID: HxMaMyK8fFW

--HG--
extra : rebase_source : 91ca882a6b6e50b23597e69f968aef7115c55496
2017-05-15 12:56:22 -07:00
Olli Pettay 1b1642f523 Bug 1364018 - Coalesce wheel events more aggressively, r=stone
--HG--
extra : rebase_source : 17171c517a0c49cfbb2a6c99a06d655e61930e2d
2017-05-12 14:13:59 +03:00
David Anderson 679a447659 Make sure to re-identify TextureFactoryIdentifiers when reinitializing rendering. (bug 1363126 part 6, r=rhunt) 2017-05-11 22:45:16 -07:00
David Anderson 57800cc0bd Handle in-process device resets by recreating the entire rendering stack. (bug 1363126 part 2, r=rhunt) 2017-05-11 22:44:27 -07:00
David Anderson 27df5ad5bd Handle remote device resets by recreating the entire rendering stack. (bug 1363126 part 1, r=rhunt, ipc_r=billm) 2017-05-11 22:44:27 -07:00
Kris Maglione 503713f913 Bug 1353060: Use the correct layer manager for frameloaders in <popup>s. r=kats,mattwoodrow
Currently, we only correctly support remote layer trees for frameloaders that
use the same layer manager as their document. Since we need to be able to host
remote <browser> content in popup widgets for remote WebExtensions, we need to
tie the frameloaders to the layer manager of their host element, rather than
the root layer manager for the document.

MozReview-Commit-ID: 4RCsamFBiQw
2017-04-17 21:41:18 -07:00
Ehsan Akhgari e45265442e Bug 1363614 - Don't attempt to notify the parent about the change in the number of beforeunload event listeners if our IPC link is already severed; r=mconley 2017-05-10 19:39:22 -04:00
Carsten "Tomcat" Book d66b9f27d5 merge mozilla-inbound to mozilla-central a=merge 2017-05-10 15:07:28 +02:00
Kartikaya Gupta 9e5e792b0f Back out bug 1353060 (3 csets) for possibly causing a checkerboarding regression. r=backout
MozReview-Commit-ID: AIHvzAUUCeu
2017-05-09 13:23:20 -04:00
Gerald Squelart bc7b6779e4 Bug 1356138 - Backout bug 1337063 (Msg_GetGraphicsDeviceInitData opt) for Talos regression - r=dvander
MozReview-Commit-ID: LS1Gg1HRwKo

--HG--
extra : rebase_source : 8b20bc37b20feac4c0b590c8b286a9ee834646e2
2017-05-09 14:40:11 +12:00
Wes Kocher 75c2b7a481 Merge m-c to autoland, a=merge
MozReview-Commit-ID: 3BrkDVl7521
2017-05-08 16:24:51 -07:00
Andrea Marchesini a67a0a31e8 Bug 1362003 - nsGlobalWindow::GetLocation doesn't need to receive an ErrorResult param, r=bz
Renaming nsGlobalWindow::GetLocation() to Location().
2017-05-08 15:49:31 +02:00
David Anderson af30648746 Make PLayerTransaction's constructor async. (bug 1350634, ipc_r=billm, r=mattwoodrow, r=kats)
PLayerTransaction's constructor was previously synchronous so we could
return a TextureFactoryIdentifier. This is quite reliably available
already in the case of opening a tab, due to RenderFrameParent knowing
which compositor it is attached to, so we can make the constructor
asynchronous.

In the top-level widget case, we add a new synchronous message to find
the TextureFactoryIdentifier.
2017-05-05 10:53:17 -07:00
Nicholas Nethercote ea25e62e3c Bug 1360471 (part 4) - Use a bitfield to represent profiler features. r=mstange.
Currently the profiler mostly uses an array of strings to represent which
features are available and in use. This patch changes the profiler core to use
a uint32_t bitfield, which is a much simpler and faster representation.
(nsProfiler and the profiler add-on still use the array of strings, alas.) The
new ProfilerFeature type defines the values in the bitfield.

One side-effect of this change is that profiler_feature_active() now can be
used to query all features. Previously it was just a subset.

Another side-effect is that profiler_get_available_features() no longer incorrectly
indicates support for Java and stack-walking when they aren't supported. (The
handling of task tracer support is unchanged, because the old code handled it
correctly.)
2017-05-01 14:23:34 +10:00
Nicholas Nethercote cc78872f8c Bug 1360471 (part 3) - Rename various "thread name filters" identifiers as "filters". r=mstange.
The new names are more concise and matches common usage elsewhere (e.g.
profiler_start() arguments).

This patch is similar to bug 1358074 part 5.
2017-05-01 13:42:53 +10:00
Alex Gaynor 445480436b Bug 1361733 - In debug builds, do not allow content sandbox to write to all of /private/var r=haik
This permission was needed for the memory bloat logging, which is used for
leaktest, including logging intentionally crashing processes. Now we restrict
ourselves to only allowing writes to the location needed for this logging,
rather than all of /private/var.

MozReview-Commit-ID: 5AbJEZlDHNV

--HG--
extra : rebase_source : 26936b8d8bca53f2c37a195b5e7c69c151ec18d2
2017-05-02 11:07:10 -04:00
Kershaw Chang 87a1d0fe4a Bug 1360549 - Give high priority to the message of PNecko constructor, r=mayhemer
Since NotifyCurrentTopLevelOuterContentWindowId message has high priority and could jump ahead of PNecko constructor message, we have to also give high priority to PNecko.
2017-05-03 19:39:00 +02:00
Kris Maglione e77423bec5 Bug 1353060: Use the correct layer manager for frameloaders in <popup>s. r=kats,mattwoodrow
Currently, we only correctly support remote layer trees for frameloaders that
use the same layer manager as their document. Since we need to be able to host
remote <browser> content in popup widgets for remote WebExtensions, we need to
tie the frameloaders to the layer manager of their host element, rather than
the root layer manager for the document.

MozReview-Commit-ID: 4RCsamFBiQw

--HG--
extra : rebase_source : 86bca4ae1c012ff1bb84a9ad796be311cfe580f6
extra : histedit_source : 19577d69430adc8cb38c195f13db2c6de6605c4c
2017-04-17 21:41:18 -07:00
Gabor Krizsanits eb829f971b Bug 1341008 - Use the preallocated process manager by default. r=billm, r=kmag
To mitigate the delay that a new content process startup might cause, when the
browser reaches a non-busy state we attempt to prelaunch an empty content process
in the background that can be grabbed and used the next time we need one. This patch
enables the preallocated process manager by default and attempts to fix all the
issues that prevented us doing this sooner.
2017-05-03 12:00:20 +02:00
David Parks 1810e88c32 Bug 1359129 - Use the most recent RootDocAccessible when delaying DocAccessibleChild messages. r=aklotz
We sometimes briefly have more than one root DocAccessible associated with a TabChild, for example, while navigating links in a page.  This patch makes sure that we use the correct accessible when delaying messages that we forward to the parent process.
2017-05-01 14:04:55 -07:00
Ehsan Akhgari b3c48a1104 Bug 1360723 follow-up: Rename ContentParent::AboutToLoadDocumentForChild to ContentParent::AboutToLoadHttpFtpWyciwygDocumentForChild 2017-05-01 15:44:01 -04:00
Aaron Klotz edf5c2626f Bug 1354077: Return IPC_FAIL from TabParent::RecvPDocAccessibleConstructor when we receive a top-level document with a null COM proxy; r=tbsaunde
MozReview-Commit-ID: KO2B1aWiqCf
2017-04-28 18:37:22 -06:00
Phil Ringnalda 6b129efd40 Backed out changeset 867fcd3e181d (bug 1350634) for leaking in sessionstore's browser-chrome tests
MozReview-Commit-ID: 7NS2GkfZSp0
2017-04-30 21:14:10 -07:00
David Anderson d7a1f66c55 Make PLayerTransaction's constructor async. (bug 1350634, ipc_r=billm, r=mattwoodrow, r=kats)
PLayerTransaction's constructor was previously synchronous so we could
return a TextureFactoryIdentifier. This is quite reliably available
already in the case of opening a tab, due to RenderFrameParent knowing
which compositor it is attached to, so we can make the constructor
asynchronous.

In the top-level widget case, we add a new synchronous message to find
the TextureFactoryIdentifier.
2017-04-30 17:22:56 -07:00
Sebastian Hengst 42fd33ff9c merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: ELENTh08Be7
2017-04-29 11:10:31 +02:00
Sebastian Hengst d8a8efe471 merge autoland to mozilla-central. r=merge a=merge
MozReview-Commit-ID: ErfEixRecP1
2017-04-29 10:52:11 +02:00
Phil Ringnalda 7aa9d244e3 Backed out changeset 1ad211b75475 (bug 1337062) for timeouts and shutdown crashes in e10s, primarily Win8 PGO b-c and dt
MozReview-Commit-ID: 7VvEkGpU3rj
2017-04-28 21:50:06 -07:00
Ehsan Akhgari 88089b7bf1 Bug 1360723 - Rename ContentParent::TransmitPermissionsFor() to ContentParent::AboutToLoadDocumentForChild(); r=mystor 2017-04-28 18:05:32 -04:00
Iris Hsiao 5822a99946 Backed out changeset f7685ecd789d (bug 1350634) for marionette crashes 2017-04-28 10:43:34 +08:00
David Anderson 689908c568 Make PLayerTransaction's constructor async. (bug 1350634, ipc_r=billm, r=mattwoodrow,kats)
PLayerTransaction's constructor was previously synchronous so we could
return a TextureFactoryIdentifier. This is quite reliably available
already in the case of opening a tab, due to RenderFrameParent knowing
which compositor it is attached to, so we can make the constructor
asynchronous.

In the top-level widget case, we add a new synchronous message to find
the TextureFactoryIdentifier.

--HG--
extra : rebase_source : 4b29b859aa5745fabe3db0fe68742328fc0af175
2017-04-26 10:32:57 -07:00
Wes Kocher 9528ad9a03 Merge m-c to inbound, a=merge
MozReview-Commit-ID: DaH1djmEY5A
2017-04-27 13:29:07 -07:00
Wes Kocher be34ade6b6 Merge autoland to central, a=merge
MozReview-Commit-ID: 2pgVZdnDKno
2017-04-27 12:44:03 -07:00
Kartikaya Gupta e37b4e9289 Merge m-c to graphics
MozReview-Commit-ID: 6UBB4TW6an5
2017-04-27 09:31:17 -04:00
sotaro e00af8354a Bug 1358014 - Allocate PipelineId with IPC MozPromise r=nical 2017-04-26 19:18:06 -07:00
Wes Kocher c90904f9bf Merge inbound to central, a=merge CLOSED TREE
MozReview-Commit-ID: 9HQViJrDT6S
2017-04-26 17:30:31 -07:00
Sotaro Ikeda ad333615eb Backout Bug 1358014 2017-04-25 12:13:32 -07:00
Sotaro Ikeda 2a9e1b455e Bug 1358014 - Add a capability to allocate PipelineId with IPC MozPromise r=nical 2017-04-25 10:39:56 -07:00
Andrea Marchesini 8beb8af7d4 Bug 1357846 - Introducing nsIFilePicker.displaySpecialDirectory, r=smaug
nsIFilePicker.displaySpecialDirectory is a string that can be set to TmpD,
Desk, or any other special directory value. The real value of this directory
will be read in the parent process.
2017-04-26 18:20:19 +02:00
Carsten "Tomcat" Book d9cce3c040 merge autoland to mozilla-central a=merge 2017-04-26 08:40:02 +02:00
Gabor Krizsanits b007d78f5d Bug 1352961 - P2: Measure for the delay before a new tab starts processing the first URL. r=mconley, data-r=bsmedberg
Opening pages in a new tab might suffer an extra delay from e10s-multi because
the new process has to start up and then run all the process / frame scripts
before it can react on the request from the parent to load the first page.

There are two code paths. Either we start the tab with a remote browser and
then the RemoteWebNavigation will send the request. Or we start with a non-remote
browser and have to change the remoteness flag on it, and then the SessionStore
will send the request.

In each cases we start the timer on the parent side, send it with the message,
and when the child receives it it stops the timer and reports the measured delay.
2017-04-25 17:11:12 +02:00
Christoph Kerschbaumer 7711007990 Bug 1359092 - Extend loadURI within nsIWebNavigation.idl by a triggeringPrincipal argument. r=bz 2017-04-25 12:22:25 +02:00
Andrea Marchesini 4c39212973 Bug 1358115 - Use IPCBlob in DataTransfer, r=smaug 2017-04-24 12:16:50 +02:00
Andrea Marchesini acd0e47b6d Bug 1358113 - Use IPCBlob in File.createFromNsIFile/createFromFileName, r=smaug 2017-04-24 12:16:50 +02:00
Andrea Marchesini 4ee48ef4d0 Bug 1358114 - Use IPCBlob in BlobURL, r=smaug 2017-04-24 12:16:49 +02:00
Andrea Marchesini 1c755cd132 Bug 1358111 - Use IPCBlob in Entries API - part 1 - GetFilesHelper, r=smaug 2017-04-24 12:16:49 +02:00
Andrea Marchesini c4efbc7670 Bug 1358109 - Use IPCBlob in PFilePicker, r=smaug 2017-04-25 14:07:30 +02:00
Carsten "Tomcat" Book 1fa6c5a322 Backed out changeset 3e42f84996ea (bug 1359092) for causing assertion failures 2017-04-25 10:46:31 +02:00
Christoph Kerschbaumer 10ba7f4ab5 Bug 1359092 - Extend loadURI within nsIWebNavigation.idl by a triggeringPrincipal argument. r=bz 2017-04-24 21:57:25 +02:00
Zibi Braniecki 7ff88a7209 Bug 1348042 - Refactor LocaleService to operate in server-client mode. r=Ehsan,qdot
LocaleService serves two main functions. It is a central place for all code in the
engine to learn about locales, but it also does the language negotiation and selection.

The former is relevant in all processes, but the latter should only be performed
by the "main" process. In case of current Desktop Firefox, the parent process
is the one performing all the language negotiation, and content processes should
operate in the "client" mode.
In Fennec, there's a Java app on top of Gecko which should work as a "server"
and then all processes, including parent process of Gecko is merely a "client" for that.

This refactor finalizes this duality making it easily configurable to define in
which mode a given LocaleService operates.

The server-client model allows all clients to stay in sync with the server,
but operate transparently for all callers just returning the right values.

In order to initialize LocaleService in the client mode in child process with the
right locales I'm adding the list of app locales to the XPCOMInitData,
and then fire LocaleService::SetAppLocales in the child process initialization.

In order to keep the list up to date, I'm adding intl:app-locales-changed to
the list of observed topics, and when triggered, I send the updated list
to the child process, which updates LocaleService::SetAppLocales with the new
list.

MozReview-Commit-ID: K9X6berF3IO

--HG--
extra : rebase_source : ca5e502d064023fddfd63fe6fe5eccefce8dee52
2017-03-26 07:09:45 +02:00
Ehsan Akhgari 755165acec Bug 1356922 - Part 2: Remove TabParent::sNextTabParent; r=billm 2017-04-24 14:18:31 -04:00
Ehsan Akhgari 6399dc4d9a Bug 1356922 - Part 1: Replace the next TabParent global pointer with per-window/tab next TabParent ID; r=billm,mconley
This patch replaces the usage of sNextTabParent pointer to store the next
PBrowser parent actor to be used by the next frame loader with the
following information:

  * In the case where the content JS has requested a new tab, the ID of the
    next TabParent will be stored on the <xul:browser> element.
  * In the case where the content JS has requested a new window, the ID of
    the next TabParent will be stored on the created nsXULWindow.
2017-04-24 14:18:29 -04:00
Ehsan Akhgari a628d03be7 Bug 1358709 - Part 2: Remove the SlowScriptData.lineno IPDL field and the glue code; r=bill 2017-04-24 14:15:52 -04:00
Ehsan Akhgari 561daa3a09 Bug 1358709 - Part 1: Remove nsIHangReport::GetScriptLineNo; r=billm
This is dead code, and removing it is harmless.
2017-04-24 14:15:52 -04:00
Sebastian Hengst 9a4acf2991 Backed out changeset dec83a85f824 (bug 1358109) for failing mochitest dom/indexedDB/test/test_blob_worker_xhr_read_slice.html. r=backout 2017-04-24 15:44:10 +02:00
Sebastian Hengst 64781f7444 Backed out changeset 50518d6aa0fc (bug 1358111) 2017-04-24 15:43:14 +02:00
Sebastian Hengst d3da87ad97 Backed out changeset a180e3f4de16 (bug 1358114) 2017-04-24 15:43:05 +02:00
Sebastian Hengst 97cb53bd66 Backed out changeset 2577afd226ff (bug 1358113) 2017-04-24 15:43:00 +02:00
Sebastian Hengst d4b4629dd4 Backed out changeset a10d45c7d6de (bug 1358115) for failing mochitest test_blob_worker_xhr_read_slice.html. r=backout 2017-04-24 14:06:29 +02:00
Andrea Marchesini b48412eef0 Bug 1358115 - Use IPCBlob in DataTransfer, r=smaug 2017-04-24 12:16:50 +02:00
Andrea Marchesini 45f5829cfd Bug 1358113 - Use IPCBlob in File.createFromNsIFile/createFromFileName, r=smaug 2017-04-24 12:16:50 +02:00
Andrea Marchesini 5046098373 Bug 1358114 - Use IPCBlob in BlobURL, r=smaug 2017-04-24 12:16:49 +02:00
Andrea Marchesini 44a1314868 Bug 1358111 - Use IPCBlob in Entries API - part 1 - GetFilesHelper, r=smaug 2017-04-24 12:16:49 +02:00
Andrea Marchesini 25e4c65c6d Bug 1358109 - Use IPCBlob in PFilePicker, r=smaug 2017-04-24 12:16:49 +02:00
Andrea Marchesini 794d21eaaf Bug 1353629 - PBlob refactoring - part 9 - PBlob should use IPCStream in case it is dealing with an IPCBlobInputStream, r=smaug
This patch will go away when I'll finishing the removing of PBlob.  Currently,
when a PBlob is sent from child to parent, we use PMemoryStream in order to
recreate the inputStream on the parent side. PMemoryStream sends the data in
chunks.

But if PBlob is dealing with a IPCBlobInputStream, it doesn't have access to
the real data. In this case, we must send data using IPCStream. In this way,
Note that thisIPCBlobInputStream will send its ID, and the parent will take the
real inputStream from the IPCBlobInputStreamStorage.  Note that I check the
size to be 1mb instead 0. No particular reasons, but better to avoid the use of
PMemoryStream for nothing.
2017-04-24 12:09:40 +02:00
Andrea Marchesini db0019c058 Bug 1353629 - PBlob refactoring - part 4 - IPCBlobInputStream, r=smaug
IPCBlobInputStream is a new type of nsIInputStream that is used only in content
process when a Blob is sent from parent to child. This inputStream is for now,
just cloneable.

When the parent process sends a Blob to a content process, it has the Blob and
its inputStream. With its inputStream it creates a IPCBlobInputStreamParent
actor. This actor keeps the inputStream alive for following uses (not part of
this patch).

On the child side we will have, of course, a IPCBlobInputStreamChild actor.
This actor is able to create a IPCBlobInputStream when CreateStream() is
called.  This means that 1 IPCBlobInputStreamChild can manage multiple
IPCBlobInputStreams each time one of them is cloned. When the last one of this
stream is released, the child actor sends a __delete__ request to the parent
side; the parent will be deleted, and the original inputStream, on the parent
side, will be released as well.

IPCBlobInputStream is a special inputStream because each method, except for
Available() fails. Basically, this inputStream cannot be used on the content
process for nothing else than knowing the size of the original stream.

In the following patches, I'll introduce an async way to use it.
2017-04-24 12:09:40 +02:00
Andrea Marchesini 03ffca06a1 Bug 1353629 - PBlob refactoring - part 3 - IPCBlob in ClonedMessageData, r=smaug
This is the first use of IPCBlob: ClonedMessageData.
ClonedMessageData is used for BroadcastChannel, MessagePort and any
postMessage() communication. This patch changes StructuredCloneData in order to
use IPCBlob instead of PBlob.
BroadcastChannel has a custom way to manage Blobs because when the parent
receives them from a content process, it must send them to any other
BroadcastChild actor duplicating the serialization.
2017-04-24 12:09:40 +02:00
Wes Kocher 226702fd85 Merge m-c to autoland a=merge
MozReview-Commit-ID: LOGgOErcV9L
2017-04-26 17:43:38 -07:00
Gerald Squelart b1c77d60bc Bug 1337062 - Transfer initial gfxVars with SendSetXPCOMProcessAttributes - r=dvander
The content process stores the incoming initial gfxVars updates, which are
lazily used when the gfxVars are first initialized.

MozReview-Commit-ID: ExUVdr5xGLb

--HG--
extra : rebase_source : fd6f3e1bc4eabdd85447eff0c0fa22537747431f
2017-04-26 13:59:43 +12:00
Carsten "Tomcat" Book 3b4328e578 Merge mozilla-central to autoland
--HG--
extra : rebase_source : bc4cd926477775ac802f400a79f553034d569a18
2017-04-26 09:08:31 +02:00
Samael Wang d5dd0ed263 Bug 1337064 - Remove sync protocol PContent::AllocateTabId. r=kanru
Remove sync protocol AllocateTabId. Instead we generate tabId in
each process with nsContentUtils::GenerateTabId, and register
RemoteFrameInfo in parent process. If the tab id was generated from
a content process, it's sent parent through either PBrowserConstructor
or PContent::CreateChildProcess.

MozReview-Commit-ID: D3W2fK9eCNH

--HG--
extra : rebase_source : 1913f8f586537be1c82a70a19cc8c6351671d0df
2017-04-05 18:42:00 +08:00
Michael Layzell 4688a63a06 Bug 1355608 - Part 2: Eagerly transmit permissions to the content process for service worker registrations, r=catalinb
This requires running code which checks whether or not the permissions have
arrived, potentially delaying a fetch request for a very short period of time if
the permissions are still in-flight.

MozReview-Commit-ID: E6OTY6IDThb
2017-04-27 13:41:15 -04:00
Michael Layzell 8b7ba021a4 Bug 1339537 - Part 6: Pass std::function values tree by const reference instead of by value, r=ehsan
MozReview-Commit-ID: PVAqU2DPs2
2017-04-27 12:44:57 -04:00
Brendan Dahl a071a0f003 Bug 1356681 - Expand headless mode support for linux. r=automatedtester,jrmuizel,kanru
Full Firefox on Linux can now be run with a --headless flag.
This includes seven parts:
1) Running all marionette tests in headless mode.
2) Prevents crashes where Firefox calls into GTK.
3) Adds a headless screen helper which supports changing the headless
screen size with the environment variables MOZ_HEADLESS_WIDTH and
MOZ_HEADLESS_HEIGHT.
4) Supports simulating moving a headless window.
5) Adds a stubbed out nsSound implementation.
6) Supports simulating size mode changes of headless windows.
7) Adds the --headless flag for Firefox.
2017-05-18 17:47:10 -07:00
Mike Conley cf1d141d21 Bug 1336763 - Add a hasBeforeUnload attribute to nsITabParent. r=Ehsan
This will return true if any of the frames loaded in the associated
TabChild have set at least one onbeforeunload event handler. If those
handlers are all removed, or all of the documents with onbeforeunload
event handlers are unloaded, this becomes false again.

Note that subframes that are sandboxed without the allow-modals
permission will not affect the hasBeforeUnload attribute, since
those iframes should never cause the beforeunload confirmation
dialog to display.

MozReview-Commit-ID: 8b0gBYWwMDn

--HG--
extra : rebase_source : 69f3b692d6e73f6277e6982aad02bcd1ebdd8acf
2017-04-13 17:54:07 -04:00
Masayuki Nakano 0789f7b595 Bug 1217700 part.1 nsIWidget should return reference to IMENotificationRequests r=m_kato
IMEContentObserver may need to change notifications to send when TextInputProcessor begins input transaction.  In current design, IMEContentObserver needs to retrieve IMENotificationRequests at every change.  However, if nsIWidget returns a reference to its IMENotificationRequests, IMEContentObserver can call it only once.

For that purpose, this patch changes nsIWidget::GetIMENotificationRequests() to nsIWidget::IMENotificationRequestsRef() and make it return |const IMENotificationRequests&|.  However, if the lifetime of the instance of IMENotificationRequest is shorter than the widget instance's, it's dangerous.  Therefore, it always returns TextEventDispatcher::mIMENotificationRequests.  TextEventDispatcher's lifetime is longer than the widget.  Therefore, this guarantees the lifetime.

On the other hand, widget needs to update TextEventDispatcher::mIMENotificationRequests before calls of nsIWidget::IMENotificationRequestsRef().  Therefore, this patch makes TextEventDispatcher update proper IMENotificationRequests when it gets focus or starts new input transaction and clear mIMENotificationRequests when it loses focus.

Note that TextEventDispatcher gets proper requests both from native text event dispatcher listener (typically, implemented by native IME handler class) and TextInputProcessor when TextInputProcessor has input transaction because even if TextInputProcessor overrides native IME, native IME still needs to know the content changes since they may get new input transaction after that.

However, there may not be native IME handler in content process.  If it runs in Android, PuppetWidget may have native IME handler because widget directly handles IME in e10s mode for Android.  Otherwise, native IME handler is in its parent process.  So, if TextInputHandler has input transaction in content process, PuppetWidget needs to behave as native event handler.  Therefore, this patch makes PuppetWidget inherit TextEventDispatcherListener and implements PuppetWidget::IMENotificationRequestsRef().

MozReview-Commit-ID: 2SW3moONTOX

--HG--
extra : rebase_source : d2634ada6c33dbf7a966fadb68608411ee24bfab
2017-04-15 01:35:58 +09:00
Wes Kocher 5ce5528fb1 Merge inbound to m-c a=merge
MozReview-Commit-ID: DQDuEiYLWCO
2017-04-20 15:30:43 -07:00
Sebastian Hengst d2c3ee6506 Backed out changeset 1024114af681 (bug 1353629) 2017-04-20 18:37:14 +02:00
Sebastian Hengst b4d6f20936 Backed out changeset 2b53bdd61d64 (bug 1353629) 2017-04-20 18:37:09 +02:00
Sebastian Hengst f2630c2157 Backed out changeset c930526369c2 (bug 1353629) 2017-04-20 18:36:46 +02:00
Andrea Marchesini f5f724ed93 Bug 1353629 - PBlob refactoring - part 9 - PBlob should use IPCStream in case it is dealing with an IPCBlobInputStream, r=smaug
This patch will go away when I'll finishing the removing of PBlob.  Currently,
when a PBlob is sent from child to parent, we use PMemoryStream in order to
recreate the inputStream on the parent side. PMemoryStream sends the data in
chunks.

But if PBlob is dealing with a IPCBlobInputStream, it doesn't have access to
the real data. In this case, we must send data using IPCStream. In this way,
Note that thisIPCBlobInputStream will send its ID, and the parent will take the
real inputStream from the IPCBlobInputStreamStorage.  Note that I check the
size to be 1mb instead 0. No particular reasons, but better to avoid the use of
PMemoryStream for nothing.
2017-04-20 15:20:38 +02:00
Andrea Marchesini 3a80836d4c Bug 1353629 - PBlob refactoring - part 4 - IPCBlobInputStream, r=smaug
IPCBlobInputStream is a new type of nsIInputStream that is used only in content
process when a Blob is sent from parent to child. This inputStream is for now,
just cloneable.

When the parent process sends a Blob to a content process, it has the Blob and
its inputStream. With its inputStream it creates a IPCBlobInputStreamParent
actor. This actor keeps the inputStream alive for following uses (not part of
this patch).

On the child side we will have, of course, a IPCBlobInputStreamChild actor.
This actor is able to create a IPCBlobInputStream when CreateStream() is
called.  This means that 1 IPCBlobInputStreamChild can manage multiple
IPCBlobInputStreams each time one of them is cloned. When the last one of this
stream is released, the child actor sends a __delete__ request to the parent
side; the parent will be deleted, and the original inputStream, on the parent
side, will be released as well.

IPCBlobInputStream is a special inputStream because each method, except for
Available() fails. Basically, this inputStream cannot be used on the content
process for nothing else than knowing the size of the original stream.

In the following patches, I'll introduce an async way to use it.
2017-04-20 15:20:38 +02:00
Andrea Marchesini b42d5af54d Bug 1353629 - PBlob refactoring - part 3 - IPCBlob in ClonedMessageData, r=smaug
This is the first use of IPCBlob: ClonedMessageData.
ClonedMessageData is used for BroadcastChannel, MessagePort and any
postMessage() communication. This patch changes StructuredCloneData in order to
use IPCBlob instead of PBlob.
BroadcastChannel has a custom way to manage Blobs because when the parent
receives them from a content process, it must send them to any other
BroadcastChild actor duplicating the serialization.
2017-04-20 15:20:38 +02:00
Edgar Chen 03f19d5e46 Bug 1357002 - Part 1: Cache "dom.webcomponents.customelements.enabled" preference; r=wchen
MozReview-Commit-ID: HMsvOmYJvjX
2017-04-07 18:48:16 +08:00
Ehsan Akhgari f26370d441 Bug 1356913 - Remove support for the mozapptype attribute; r=billm
This is dead functionality now that mozapp support has been removed.
2017-04-20 01:09:28 -04:00
Valentin Gosu 061dd9b679 Bug 1354349 - Use channel.isDocument in ContentParent::TransmitPermissionsFor r=mystor
MozReview-Commit-ID: L9b6UeXJ8o5

--HG--
extra : rebase_source : bdcdbd0ee7d7399495cb265d15437a82a654e694
2017-04-20 10:15:16 +08:00
Valentin Gosu 0a4d506e21 Bug 1354349 - Add nsIChannel.isDocument that checks if LOAD_DOCUMENT_URI is set, or if LOAD_HTML_OBJECT_DATA and the channel has the appropriate MIME type r=mcmanus,mystor
MozReview-Commit-ID: K28Opd9JTr2

--HG--
extra : rebase_source : d1a786d9b4318be15f195fdc330489121ebd6ece
2017-04-20 10:15:06 +08:00
Mike Hommey 34e619d1c1 Bug 1357323 - Remove support for gonk in the build system. r=gps
Everything depending on the widget being gonk can go away, as well as
everything depending on MOZ_AUDIO_CHANNEL_MANAGER, which was only
defined on gonk builds under b2g/ (which goes away in bug 1357326).

--HG--
extra : rebase_source : 9f0aeeb7eea8417fa4e06d662d566d67ecaf2a24
2017-04-18 16:56:09 +09:00
Blake Kaplan 4cff489478 Bug 1349363 - Centralize pref-checking code for e10s-multi control. r=Felipe
This patch centralizes all of the pref-checking code for e10s-multi in a
single function. It is intended to be used throughout the codebase to see if
e10s-multi is "on". It also introduces dom.ipc.multiOptOut, which can be set
by the user to indicate that they do not want to participate in the e10s-multi
experiment.

MozReview-Commit-ID: Kyq1fqNzwue

--HG--
extra : rebase_source : 321a44fb5909c067a20dbb3b739175ba08569a5f
2017-04-17 14:36:04 -07:00
Carsten "Tomcat" Book 7ba1b88f0b Backed out changeset ec9fb39f7133 (bug 1354349) for bustage 2017-04-18 08:52:14 +02:00
Carsten "Tomcat" Book 1c4a806242 Backed out changeset a28aa86d1ffe (bug 1354349) 2017-04-18 08:51:03 +02:00
Valentin Gosu a858271ee6 Bug 1354349 - Use channel.isDocument in ContentParent::TransmitPermissionsFor r=mystor
MozReview-Commit-ID: L9b6UeXJ8o5

--HG--
extra : rebase_source : a03d4f34bc53a92056168302c8ef41fb277db0ee
2017-04-18 14:17:58 +08:00
Valentin Gosu 8f33abcc56 Bug 1354349 - Add nsIChannel.isDocument that checks if LOAD_DOCUMENT_URI is set, or if LOAD_HTML_OBJECT_DATA and the channel has the appropriate MIME type r=mcmanus,mystor
MozReview-Commit-ID: K28Opd9JTr2

--HG--
extra : rebase_source : 226ef1e6685a9608aa7c07d3c83b048d6e1e7278
2017-04-18 11:25:47 +08:00
Alex Gaynor fcd28c5b2a Bug 1294641 - whitelist reads from the .app directory in the macOS sandbox r=froydnj,haik
This patch does a few things:
a) Adds the resources location from the .app directory to the read whitelist
b) When it's a non-packaged build, mach run (and various mach tests) set an environment variable for the repo location which we allow reads from.

r=haik,froydnj

MozReview-Commit-ID: KNvAoUs5Ati

--HG--
extra : rebase_source : 81ba8bfee0ca96979cf8e30d75cdd47f06bc10ea
2017-04-07 14:53:19 -04:00
Kartikaya Gupta 41c543ac1b Merge m-c to graphics
MozReview-Commit-ID: G9MmPXdyBxg
2017-04-17 09:40:34 -04:00
Kartikaya Gupta 1e8738cabb Merge m-c to graphics
MozReview-Commit-ID: 7iqIrSl2VpU
2017-04-15 17:05:27 -04:00
Sebastian Hengst cfea98eabf merge mozilla-central to autoland. r=merge a=merge 2017-04-15 20:08:03 +02:00
sotaro 43525e6cb0 Bug 1356190 - Fix GetNextExternalImageId() r=jrmuizel 2017-04-14 17:06:09 +09:00
Wes Kocher 25d50f2c30 Merge inbound to central, a=merge 2017-04-12 14:39:09 -07:00
Markus Stange 59446b4f09 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

--HG--
extra : rebase_source : b0271115a66afbf54d98b5bad61165f815f5bd8c
extra : histedit_source : 299cccc9cc8c06de4d61686ff49d2b0e7649da78
2017-04-12 16:44:31 -04:00
Farmer Tseng 9438ec2f1a Bug 1351190 - Associate printing actor with SystemGroup r=bevistseng,smaug
MozReview-Commit-ID: VNLEKCFrtX

--HG--
extra : rebase_source : 7b2fdc5bae4fcac61a03c37ec9056f47f6566b57
2017-03-29 13:43:44 +08:00
Ehsan Akhgari 067b18b9f3 Bug 1316683 - Part 5: Avoid going into SpiderMonkey for retrieving origin attributes; r=baku
Our caller is C++ code, and the implementations are all also written in C++,
so there is no reason to go through SpiderMonkey here.  This patch also makes
nsILoadContext builtinclass to ensure that the implementation is always native.
2017-04-12 11:32:19 -04:00
Bill McCloskey 30b9639c6e Bug 1333968 - Label the DidComposite message (r=dvander)
MozReview-Commit-ID: 7cW7apxUJu0
2017-04-11 12:59:13 -07:00
Ehsan Akhgari 1d72f5911e Bug 1347461 - Part 2: Always initialize all DataStorage classes in the content process at initialization time; r=keeler 2017-04-10 22:44:36 -04:00
Ehsan Akhgari c0b6db9d07 Bug 1347461 - Part 1: Add a C++ API for the list of DataStorage classes; r=keeler 2017-04-10 22:44:32 -04:00
Masayuki Nakano 61ce5526c6 Bug 1296220 Rename nsIMEUpdatePreference to mozilla::widget::IMEUpdatePreference r=m_kato
MozReview-Commit-ID: 2rIXTlwA6my

--HG--
extra : rebase_source : a51be3edd717092738c2b5e8ccc4f60540712bfd
2017-04-11 21:24:55 +09:00
Iris Hsiao f0d003cecd merge mozilla-inbound to mozilla-central a=merge 2017-04-14 16:47:00 +08:00
Phil Ringnalda e8d261cd04 Backed out changeset 2d7ef036a01f (bug 1337062) for making browser_net_open_request_in_tab.js nearly permaorange on Win7 debug e10s, and causing Windows e10s shutdown crashes whenever anything else goes wrong 2017-04-13 20:13:31 -07:00
Wes Kocher 514e230373 Merge inbound to central, a=merge 2017-04-13 17:24:01 -07:00
Wes Kocher c8a2033f35 Merge m-c to inbound, a=merge 2017-04-13 17:33:39 -07:00
Bill McCloskey 4d2a5305f6 Bug 1356414 - Add comment explaining the purpose of ContentPrefs.cpp (NPOTB, DONTBUILD)
MozReview-Commit-ID: GAdVxBCo1KR
2017-04-13 15:20:44 -07:00
Gerald Squelart 2b9e3638a2 Bug 1337062 - Transfer initial gfxVars with SendSetXPCOMProcessAttributes - r=dvander
MozReview-Commit-ID: EUnwXkDwBTZ

--HG--
extra : rebase_source : b02164c0b681d8cc389a2c493630aebd63069474
2017-04-11 15:36:56 +12:00
Bill McCloskey 5c609727dc Bug 1354249 - Use same TabGroup as original tab for print preview (r=mystor)
MozReview-Commit-ID: 5wmjLgq2j5m
2017-04-12 20:17:50 -07:00
Phil Ringnalda c582d2c9af Backed out changeset e8efc3c5d61f (bug 1337062) for crashes in mozilla::gfx::gfxVars::ApplyUpdate(mozilla::gfx::GfxVarUpdate
CLOSED TREE
2017-04-11 18:49:21 -07:00
Gerald Squelart b34950f944 Bug 1337062 - Transfer initial gfxVars with SendSetXPCOMProcessAttributes - r=dvander
MozReview-Commit-ID: EUnwXkDwBTZ

--HG--
extra : rebase_source : 2641d987a6f7326dc07766ba6b06c223a513e313
2017-04-11 15:36:56 +12:00
Gerald Squelart 63dbe37188 Bug 1337063 - Transfer child's initial ContentDeviceData with SendSetXPCOMProcessAttributes - r=dvander
MozReview-Commit-ID: IWCgL9aCusW

--HG--
extra : rebase_source : 31d901f99105224ac7445b487813b010fd643bb9
2017-04-12 09:37:35 +12:00
Kartikaya Gupta 96657be4f9 Bug 1350638 - Remove sync GetCompositorOptions call in TabChild::ReinitRenderingState. r=dvander
This piggybacks the sync message on the pre-existing
EnsureLayersConnected sync message pathway to the compositor.

MozReview-Commit-ID: DfYTlJrr3Gu

--HG--
extra : rebase_source : c2bd29e655db65e3016a79bf3f6068ffb1c8b7c7
2017-04-09 17:31:24 -04:00
Kartikaya Gupta 1bfa62105b Bug 1350638 - Remove sync GetCompositorOptions call in TabChild::InitRenderingState. r=dvander
The goal of this patch is to remove the call to the sync IPC
GetCompositorOptions message from TabChild::InitRenderingState. In order
to this, we have InitRenderingState take the CompositorOptions as an
argument instead, and propagate that backwards through the call sites.
Eventually we can propagate it back to a set of already-sync IPC
messages in PCompositorBridge that are used during layers id
registration (NotifyChildCreated, NotifyChildRecreated, etc.). Therefore
this patch effectively piggybacks the CompositorOptions sync IPC onto
these pre-existing sync IPC messages.

The one exception is when we propagate it back to the AdoptChild call.
If this message were sync we could just use it like the others and have
it return a CompositorOptions. However, it is async, so instead we add
another call to GetCompositorOptions here temporarily. This will be
removed in the next patch.

MozReview-Commit-ID: AtdYOuXmHu4

--HG--
extra : rebase_source : 5b80831cf84d3a4b57b2214a12ccf8a896cfa3a7
2017-04-09 17:30:27 -04:00
Sebastian Hengst 548852b3a4 merge mozilla-central to autoland. r=merge a=merge 2017-04-07 22:16:26 +02:00
Carsten "Tomcat" Book 3a762886de Merge mozilla-central to mozilla-inbound 2017-04-07 15:33:03 +02:00
Gabor Krizsanits e2e7641412 Bug 1344174 -Add measure for memory distribution among child processes. r=chutten 2017-04-07 12:14:45 +02:00
Henry Chang eec96acbf0 Bug 1343425 - Supports nsIURIClassifier.asyncClassifyLocalWithTables. r=baku
We add a new "on-off" protocol PURLClassifierLocal which calls
nsIURIClassifier.asyncClassifyLocalWithTables on construction and
calls back on destruction. Pretty much the same design as PURLClassifier.

In order to avoid code duplication, the actor implementation is templatized
and |MaybeInfo| in PURLClassifier.ipdl is moved around.

Test case is included and the custom event target is not in place for labelling.
The custom event target will be done in Bug 1353701.

MozReview-Commit-ID: IdHYgdnBV7S

--HG--
extra : rebase_source : ab1c896305b9f76cab13a92c9bd88c2d356aacb7
2017-04-07 14:15:16 +08:00
Phil Ringnalda 032b07550c Backed out changeset 4f7947062b4f (bug 1337062) for assertion failures in gfxVars.cpp
--HG--
extra : rebase_source : 307963eba4328b23edaf64e7255f5f501ace0efe
2017-04-06 20:11:19 -07:00
Gerald Squelart 9c16b0ccdc Bug 1337062 - Transfer initial gfxVars over command line - r=blassey
When a subprocess is launched, gfxVars updates (for non-default values) are
serialized and passed on the command line, up to a limit of 1023 characters,
and ensuring it should not overflow the command line size.

When the child starts, the command line parameter is given to gfxVars, so the
updates can be used during gfxVars::Initialize(), instead of doing a sync
request to the parent.

In case the updates are not sent, or in the unlikely case the child cannot
parse them, we fallback to the sync request -- The former case should be rare
enough that a slow sync request is acceptable: It should only happen if D3D
block-list is *modified* (most people would either use the default, or just
overwrite these prefs with short strings.)

MozReview-Commit-ID: 6MoJC0fe59Q

--HG--
extra : rebase_source : cdc2e451783160c579b8fc84050e8457c600523e
2017-03-28 12:16:41 +11:00
Mike Conley 2228d5aa1b Bug 1354080 - Stop doing needless work in the parent process every time the refresh driver ticks. r=kats
When we're animating, we tick the refresh driver. If that occurs in the parent process
when e10s is enabled, then we currently run TabParent::DidRefresh which does some
dimensions calculations and might send a message to the content process if the
dimensions have changed.

This was originally added to fix a B2G bug in bug 1153023. We don't need to do it
anymore, since we don't set CSS transforms on content browser windows.

MozReview-Commit-ID: JJ7AJHlSyWn

--HG--
extra : rebase_source : b45c9f02c3db8b7ecf0beb40fa7540db39473e8d
2017-04-06 18:11:34 -04:00
Sotaro Ikeda 1b3f1e93ba Bug 1353958 - Add Gpu process reset handling for QuantumRender. r=kats
MozReview-Commit-ID: 6ZkB1ezyWlK
2017-04-06 12:56:10 -04:00
Andrea Marchesini df043c04b6 Bug 1350386 - Make nsInputStream structuredCloneable, r=mystor 2017-04-05 19:02:57 +02:00
Aaron Klotz b836337e81 Bug 1303060: Changes to a11y to enable the serving of a COM handler; r=tbsaunde
MozReview-Commit-ID: GTQF3x1pBtX

A general outline of the COM handler (a.k.a. the "smart proxy"):

COM handlers are pieces of code that are loaded by the COM runtime along with
a proxy and are layered above that proxy. This enables the COM handler to
interpose itself between the caller and the proxy, thus providing the
opportunity for the handler to manipulate an interface's method calls before
those calls reach the proxy.

Handlers are regular COM components that live in DLLs and are declared in the
Windows registry. In order to allow for the specifying of a handler (and an
optional payload to be sent with the proxy), the mscom library allows its
clients to specify an implementation of the IHandlerProvider interface.

IHandlerProvider consists of 5 functions:

* GetHandler returns the CLSID of the component that should be loaded into
  the COM client's process. If GetHandler returns a failure code, then no
  handler is loaded.
* GetHandlerPayloadSize and WriteHandlerPayload are for obtaining the payload
  data. These calls are made on a background thread but need to do their work
  on the main thread. We declare the payload struct in IDL. MIDL generates two
  functions, IA2Payload_Encode and IA2Payload_Decode, which are used by
  mscom::StructToStream to read and write that struct to and from buffers.
* The a11y payload struct also includes an interface, IGeckoBackChannel, that
  allows the handler to communicate directly with Gecko. IGeckoBackChannel
  currently provides two methods: one to allow the handler to request fresh
  cache information, and the other to provide Gecko with its IHandlerControl
  interface.
* MarshalAs accepts an IID that specifies the interface that is about to be
  proxied. We may want to send a more sophisticated proxy than the one that
  is requested. The desired IID is returned by this function. In the case of
  a11y interfaces, we should always return IAccessible2_3 if we are asked for
  one of its parent interfaces. This allows us to eliminate round trips to
  resolve more sophisticated interfaces later on.
* NewInstance, which is needed to ensure that all descendent proxies are also
  imbued with the same handler code.

The main focus of this patch is as follows:

1. Provide an implementation of the IHandlerProvider interface;
2. Populate the handler payload (ie, the cache) with data;
3. Modify CreateHolderFromAccessible to specify the HandlerPayload object;
4. Receive the IHandlerControl interface from the handler DLL and move it
   into the chrome process.

Some more information about IHandlerControl:

There is one IHandlerControl per handler DLL instance. It is the interface that
we call in Gecko when we need to dispatch an event to the handler. In order to
ensure that events are dispatched in the correct order, we need to dispatch
those events from the chrome main thread so that they occur in sequential order
with calls to NotifyWinEvent.

--HG--
extra : rebase_source : acb44dead7cc5488424720e1bf58862b7b30374f
2017-04-04 15:23:55 -06:00
Florian Queze 37ff4fc7cc Bug 1356569 - Remove addObserver's last parameter when it is false, r=jaws. 2017-04-14 21:51:38 +02:00
Sebastian Hengst a07223d699 Backed out changeset 322fde2d53bf (bug 1356569) so bug 1355161 can be backed out. r=backout 2017-04-14 23:39:22 +02:00
Florian Queze 95d4d20c17 Bug 1356569 - Remove addObserver's last parameter when it is false, r=jaws. 2017-04-14 21:51:38 +02:00
Phil Ringnalda 534091127f Merge m-c to a CLOSED TREE m-i 2017-04-13 20:18:28 -07:00
Geoff Brown 181892f671 Bug 1348547 - ReleaseCachedProcesses() between aboutdebugging tests; r=gabor 2017-04-04 09:45:20 -06:00
Kartikaya Gupta 6c77e5ee0c Bug 1351777 - Use a BasicLayerManager in the content process if the corresponding parent-side layer manager isn't connected to the compositor. r=dvander
There are scenarios where we have a TabParent in the UI process hooked up to
a PuppetWidget with a BasicLayerManager. Webextensions fall into this category.
In this scenario, the parent-side layer manager is not hooked up to
the compositor (that is, there is no entry in the CompositorBridge layer tree
state map for the layers id). However, the content-side still ends up creating
a ClientLayerManager or a WebRenderLayerManager, which expects the layers id to
be registered in the compositor. This results in brokenness (in the case of the
ClientLayerManager/PLayerTransaction) or crashes (in the case of WebRenderLayerManager/
PWebRenderBridge). Instead, this patch changes this scenario to have the content
process use a BasicLayerManager which seems safer.

MozReview-Commit-ID: 3f80aZrRrmD

--HG--
extra : rebase_source : 10ec78dd7daf1c1c889929f0d79e0b75675b4b05
2017-03-31 11:43:21 -04:00
Kartikaya Gupta ec035abf34 Bug 1351777 - Remove aSuccess argument to RenderFrame constructor. r=dvander
Instead we can use the otherwise-unused function to check if initialization worked.
Technically, because of the way RenderFrame construction works, whether or not
initialization succeeds is exactly dependent on whether or not the frameloader is
non-null, so we could even just use that to check success. But this feels slightly
more readable/cleaner.

MozReview-Commit-ID: CGiIAA1h6V7

--HG--
extra : rebase_source : 2d4504f7d5fde3c394edca14fe01840c1738d197
2017-03-31 11:43:21 -04:00
Kartikaya Gupta c44b0fcca0 Bug 1351777 - Remove unnecessary cast and more tightly scope a local var. r=dvander
MozReview-Commit-ID: JEfQOdQ2HNJ

--HG--
extra : rebase_source : 4cd5e8df775b930b9fea487cbf447b3310a2bcbb
2017-03-31 11:43:21 -04:00
Ryan VanderMeulen 05037eec1a Merge m-c to inbound. a=merge 2017-03-30 15:21:27 -04:00
Markus Stange 7c6c13efdf Bug 1348426 - Add profiler labels to RecvSync/Async/RpcMessage that include the message name. r=billm
MozReview-Commit-ID: F7MZhgV12DZ

--HG--
extra : rebase_source : c97e4914f4292ac52338a691dc44810f7dda7486
2017-03-29 17:43:21 -04:00
Ryan VanderMeulen f4a0d77ffc Merge inbound to m-c. a=merge 2017-03-29 09:41:54 -04:00
Andrea Marchesini 0132b2fc81 Bug 1340921 - Introduce PMemoryStream for having PBlob and Multi-e10s happy - part 3 - PMemoryStream and PBlob, r=mrbkap 2017-03-29 10:40:38 +02:00
Andrea Marchesini d99a7dac26 Bug 1340921 - Introduce PMemoryStream for having PBlob and Multi-e10s happy - part 2 - PMemoryStream actor, r=mrbkap 2017-03-29 10:40:38 +02:00
Andrew McCreight a8cef3c230 Bug 1351008 - Lazily load Manifest jsms in manifestMessages.js. r=baku
This avoids loading 7 jsms until they are actually needed, reducing
content process memory usage.

MozReview-Commit-ID: 8ukNr7PL80A

--HG--
extra : rebase_source : a926a19645ffcacadec93ecc79927d356d603114
2017-03-27 11:48:18 -07:00
Kartikaya Gupta 042789f2a8 Bug 1351384 - Stop using the CompositorOptions to check if WebRender is enabled. r=dvander
I suspect that the PuppetWidget is trying to create the layer manager after
it has been connected to a TabChild but before the TabChild has populated the
CompositorOptions. This results in the PuppetWidget effectively getting an
uninitialized value for the CompositorOptions, and so it sometimes randomly
creates a WebRenderLayerManager, later resulting in a crash.

It seems like exposing the potentially-uninitialized CompositorOptions from
TabChild like this is a bad idea, so I'm removing that API and using the more
reliable gfxVars in PuppetWidget. This is fine for WebRender purposes because
we no longer care to allow having WR compositors co-exist with non-WR
compositors.

We may eventually want to remove the CompositorOptions entirely, but for now
the rest of the usage of it seems fine.

MozReview-Commit-ID: 6ekG8j1PskK

--HG--
extra : rebase_source : 0099e847ac356ca235969bcd81f47d65f49de2eb
2017-03-28 16:40:24 -04:00
Alex Gaynor b6ba323a65 Bug 1352055 - Remove reference to a legacy preference name for sandboxing. r=jimm
MozReview-Commit-ID: 28UfBrHWfcb

--HG--
extra : rebase_source : b149a67b6816c56b35125eb2eaf2564b77dbb23c
2017-03-30 09:50:57 -04:00
Gabor Krizsanits 0384d05aa6 Bug 1346288 - Setting e10sMultiBlockedByAddons for bootrapped add-on users. r=felipe 2017-03-30 18:44:27 +02:00
Gabor Krizsanits a01e65bce7 Bug 1346288 - Block e10s-multi if e10sMultiBlockedByAddons is set. r=mrbkap 2017-03-30 18:44:20 +02:00
Kevin Chen bf53d0a60d Bug 1343479 - Label the tasks for APZ module. r=bevistseng,kats
MozReview-Commit-ID: GkAl4MZorxP

--HG--
extra : rebase_source : 0134d0d69b5d8dba0fb39aa8908fbfa4d6a9d777
2017-03-23 06:16:38 +00:00
Kan-Ru Chen 8ba424eabb Bug 1194751 - Part 6. Use mozilla::widget::ScreenManager in content process. r=mconley
This is the most important part of the patch series. It removes the
PScreenManager protocol and use ScreenManager directly in the content
processes.

Initial and subsequent updates are sent via PContent::RefreshScreens.
struct ScreenDetails are kept to serialize Screen over IPC.

nsIScreenManager::ScreenForNativeWidget is removed because
nsIWidget::GetWidgetScreen can replace it. nsIScreen::GetId is removed
because it's not useful for the more general Screen class.

MozReview-Commit-ID: 5dJO3isgBuQ

--HG--
extra : rebase_source : 06aa4e4fd56e2b2af1e7483aee7c0cc7f35bdb97
2017-03-09 19:30:26 +08:00
Kan-Ru Chen 841c421ce8 Bug 1194751 - Part 1. Remove nsIScreenManager::GetNumberOfScreens. r=jimm
It's not used anywhere. Remove it will make removing PScreenManager
easier.

MozReview-Commit-ID: 5dn8kDhTZVl

--HG--
extra : rebase_source : 96b8ddb18deee94ca256bfa118b60ceacfd2d677
2017-03-09 19:16:24 +08:00
Chris Pearce 238266c96a Bug 1315850 - Add media.eme.chromium-api.enabled to ContentPrefs.cpp. r=smaug
The pref cache added in the previous commit initializes at startup.

MozReview-Commit-ID: IvfBALLdcbe

--HG--
extra : rebase_source : b3c63c76f9eda144e6ae2c8801ac8637444f6c48
2017-02-22 16:12:47 +13:00
Andrea Marchesini 7524cbfde8 Bug 1349979 - Remove OptionalID from DOMTypes.ipdlh, r=qdot 2017-03-23 19:17:44 +01:00
Carsten "Tomcat" Book 9b6d088496 merge autoland to mozilla-central a=merge
--HG--
rename : browser/components/preferences/in-content/tests/browser_advanced_siteData.js => browser/components/preferences/in-content-old/tests/browser_advanced_siteData.js
rename : dom/media/mediasink/DecodedAudioDataSink.cpp => dom/media/mediasink/AudioSink.cpp
2017-03-23 13:42:40 +01:00
Sebastian Hengst f5e68bc3e1 Backed out changeset ef22dba0dac5 (bug 1316683) for various test failures, e.g. xpcshell netwerk/test/unit/test_bug826063.js and browser-chrome browser/components/downloads/test/browser/browser_iframe_gone_mid_download.js. r=backout on a CLOSED TREE 2017-03-22 20:28:39 +01:00
Ehsan Akhgari 101a58b3c6 Bug 1316683 - Avoid going into SpiderMonkey for retrieving origin attributes; r=baku
Our caller is C++ code, and the implementations are all also written in C++,
so there is no reason to go through SpiderMonkey here.  This patch also makes
nsILoadContext builtinclass to ensure that the implementation is always native.
2017-03-22 14:13:31 -04:00
Sebastian Hengst 20fb8455d6 Backed out changeset 7e47807067a6 (bug 1316683) for Windows bustage. r=backout 2017-03-22 15:15:27 +01:00
Ehsan Akhgari 9093d5f005 Bug 1316683 - Avoid going into SpiderMonkey for retrieving origin attributes; r=baku
Our caller is C++ code, and the implementations are all also written in C++,
so there is no reason to go through SpiderMonkey here.  This patch also makes
nsILoadContext builtinclass to ensure that the implementation is always native.
2017-03-22 10:03:26 -04:00
Andrea Marchesini 507c00cb9f Bug 1343933 - Renaming Principal classes - part 4 - ContentPrincipal, r=qdot
--HG--
rename : caps/nsPrincipal.cpp => caps/ContentPrincipal.cpp
rename : caps/nsPrincipal.h => caps/ContentPrincipal.h
2017-03-22 11:39:31 +01:00
Michael Layzell 838290fd27 Bug 1337056 - Part 12: Send down permissions when calling createAboutBlankContentViewer, r=baku
MozReview-Commit-ID: LigZnHM34CC
2017-03-21 11:08:03 -04:00
Michael Layzell bd18aec002 Bug 1337056 - Part 11: Change the permission key assertion to a fatal assert on debug builds, r=ehsan
MozReview-Commit-ID: HTxvlomRKWy
2017-03-21 11:08:03 -04:00
Michael Layzell 3ffc5e3ecd Bug 1345573 - Part 1: Key http, https, and ftp URIs on origin instead of eTLD+1, r=baku
MozReview-Commit-ID: Gihc4QFf11R
2017-03-21 11:08:03 -04:00
Michael Layzell a2d8ee53df Bug 1337056 - Part 9: Check LOAD_HTML_OBJECT_DATA in ContentParent::TransmitPermsFor, r=ehsan
MozReview-Commit-ID: 5MBAUe5zbvU
2017-03-21 11:08:03 -04:00
Michael Layzell 9803b986e3 Bug 1337056 - Part 5: Add support for finer-grained permission update messages to ContentParent, r=baku
MozReview-Commit-ID: 6y6eBLWPTue
2017-03-21 11:08:03 -04:00
Michael Layzell 09ff23c2cc Bug 1337056 - Part 3: Send down http[s] and ftp permissions as they are needed. Send down other permissions at startup, r=baku
MozReview-Commit-ID: CUKPvFp6zpF
2017-03-21 11:08:03 -04:00
Michael Layzell ba95fb3f71 Bug 1337056 - Part 2: Replace the synchronous ReadPermissions API with async APIs, r=baku
These APIs are intended to use the mechanism defined in Part 1.

Part 3 implements the usage of these APIs to synchronize permissions.

MozReview-Commit-ID: HNKyDPtoaHl
2017-03-21 11:08:03 -04:00
Sebastian Hengst e6878260b4 Backed out changeset fecc6abcf708 (bug 1316683) for bustage at docshell/base/SerializedLoadContext.cpp:65:61. r=backout on a CLOSED TREE 2017-03-21 15:47:15 +01:00
Ehsan Akhgari 28ff218127 Bug 1316683 - Avoid going into SpiderMonkey for retrieving origin attributes; r=baku
Our caller is C++ code, and the implementations are all also written in C++,
so there is no reason to go through SpiderMonkey here.  This patch also makes
nsILoadContext builtinclass to ensure that the implementation is always native.
2017-03-21 10:05:00 -04:00
Ehsan Akhgari 566751834a Bug 1346583 - Remove the PContent::Msg_OpenAnonymousTemporaryFile sync IPC; r=billm 2017-03-21 09:27:48 -04:00
Gabor Krizsanits 9ea5f7a83d Bug 1341008 - Stop rebroadcasting BlobURLUnregistration. r=baku 2017-03-21 12:58:41 +01:00
Andrea Marchesini ce13019950 Bug 1344957 - Enabling File.createFromNsIFile and File.createFromFileName only for testing and file-content-process, r=ehsan, r=bobowen 2017-03-21 11:11:06 +01:00
Markus Stange 2a4fe61200 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

--HG--
extra : rebase_source : a91e7b40ea2dbd6d75c2d1a62c359d7ea983fe3c
2017-03-22 21:44:59 -04:00
Ehsan Akhgari 4482865081 Bug 1346987 - Part 1: Introduce the asynchronous ContentChild::AsyncOpenAnonymousTemporaryFile() API; r=billm 2017-03-19 01:42:00 -04:00
Jessica Jong 3c909e1184 Bug 1344642 - Part 1: Cleanup dom.forms.datepicker related code. r=smaug
This patch basically reverts Bug 825294.

--HG--
extra : rebase_source : 58b235bfddb5acd1ec0cf1afd8f34cbb8c4e09c1
2017-03-17 11:01:57 +08:00
Boris Zbarsky e6cb980169 Bug 1343677 part 3. Remove all the CSS bits from the ContentPrefs whitelist. r=billm,dholbert
We're now asserting that we never check these before the END_ALL_PREFS phase,
which means they don't need to be sent to the content process synchronously.

MozReview-Commit-ID: 4BGbvVCjDWz
2017-03-16 17:43:17 -04:00
Sebastian Hengst 409b7d9ed9 Backed out changeset 3a6cb84f8cf8 (bug 1341008) for frequently failing toolkit/components/extensions/test/xpcshell/test_ext_i18n.js on Windows. r=backout 2017-03-16 17:29:49 +01:00
Sebastian Hengst e43c8a0ce7 Backed out changeset 8a1c36e9ba80 (bug 1341008) 2017-03-16 17:29:18 +01:00
Gabor Krizsanits 2fc4ec4086 Bug 1341008 - Use the preallocated process manager by default. r=billm, r=kmag 2017-03-16 11:22:37 +01:00
Gabor Krizsanits c49bd7ffcf Bug 1341008 - Stop rebroadcasting BlobURLUnregistration. r=baku 2017-03-16 11:22:29 +01:00
Andrea Marchesini a628be7b36 Bug 1344415 - Introduce a security check about which files can be opened by a content process, r=ehsan
Entries API gives access to the filesystem. With this patch we allow that only
to patches, previously shared by a FilePicker or a DataTransfer event.
2017-03-16 08:53:49 +01:00
Damien Zammit ce4722833c Bug 1341238 - Introduce (hidden) pref to force a particular libcubeb backend. r=kinetik,ehsan
This adds 'media.cubeb.backend' to ContentPrefs, which is necessary because
`cubeb_init` is called _very_ early in the lifetime of a content process,
because it needs to be called before enabling seccomp.
2017-03-16 18:26:33 +13:00
Kartikaya Gupta 77502d45a4 Bug 1345657. r=dvander
MozReview-Commit-ID: LRCtitKvGbJ
2017-03-15 15:30:10 -04:00
Brad Lassey 947433c766 bug 1342685 - Intermittent ts_paint | Found crashes after test run, terminating test r=billm
the << operator of std:stringstream is occationally hanging on Windows 7 PGO builds, this uses nsPrintfCString to do formatting rather than stringstreams and replaces the std::string with nsFixedCSting for string building
2017-03-15 13:35:53 -04:00
Sebastian Hengst 162864127d Backed out changeset fc94903b628a (bug 1341008) for reftest failures on debug after asserting at nsLayoutStylesheetCache.cpp:253. r=backout 2017-03-15 13:47:54 +01:00
Sebastian Hengst 827fd8b459 Backed out changeset 26389c6e73ff (bug 1341008) 2017-03-15 13:47:02 +01:00
Gabor Krizsanits 9f8f7ef83a Bug 1341008 - Use the preallocated process manager by default. r=billm, r=kmag 2017-03-15 12:59:23 +01:00
Gabor Krizsanits c5b50620ad Bug 1341008 - Stop rebroadcasting BlobURLUnregistration. r=baku 2017-03-15 12:59:13 +01:00
Evelyn Hung 00c1af4647 Bug 1347117 - Add Activate/Deactivate/ParentActivated to PContentBridge; r=billm
In a nested content process setup, FocusManager needs to activate focus
to a remote frame through ContentBridgeParent, not ContentParent.
2017-03-15 02:00:00 +01:00
Phil Ringnalda dd44ef2360 Backed out 3 changesets (bug 1346987) for media, blob, and temporaryfile failures
CLOSED TREE

Backed out changeset d24fa1b4553b (bug 1346987)
Backed out changeset 34701b9ed4ba (bug 1346987)
Backed out changeset f24f4fdc5cc8 (bug 1346987)
2017-03-14 20:03:31 -07:00
Ehsan Akhgari cac5d34f3c Bug 1346987 - Part 1: Introduce the asynchronous ContentChild::AsyncOpenAnonymousTemporaryFile() API; r=billm 2017-03-14 20:20:52 -04:00
Sebastian Hengst 1bb61f6114 Backed out changeset 2d2d603dbdaf (bug 1337056) 2017-03-15 00:46:35 +01:00
Sebastian Hengst 8b0ff01934 Backed out changeset c9674c8a9d4f (bug 1337056) 2017-03-15 00:46:30 +01:00
Sebastian Hengst 59df958663 Backed out changeset 0e4ee0af3ff0 (bug 1337056) 2017-03-15 00:46:20 +01:00
Sebastian Hengst c36e7dffb3 Backed out changeset 31a996094ef4 (bug 1337056) 2017-03-15 00:46:01 +01:00
Sebastian Hengst e1e7c0d5b1 Backed out changeset 1101f931d2d7 (bug 1345573) 2017-03-15 00:45:51 +01:00
Michael Layzell b2dbbeb326 Bug 1345573 - Part 1: Key http, https, and ftp URIs on origin instead of eTLD+1, r=baku
MozReview-Commit-ID: Gihc4QFf11R
2017-03-14 14:56:13 -04:00
Michael Layzell 1d592c734e Bug 1337056 - Part 9: Check LOAD_HTML_OBJECT_DATA in ContentParent::TransmitPermsFor, r=ehsan
MozReview-Commit-ID: 5MBAUe5zbvU
2017-03-14 14:56:10 -04:00
Michael Layzell 13c3e3acbe Bug 1337056 - Part 5: Add support for finer-grained permission update messages to ContentParent, r=baku
MozReview-Commit-ID: 6y6eBLWPTue
2017-03-14 14:56:05 -04:00
Michael Layzell d861bbc093 Bug 1337056 - Part 3: Send down http[s] and ftp permissions as they are needed. Send down other permissions at startup, r=baku
MozReview-Commit-ID: CUKPvFp6zpF
2017-03-14 14:56:03 -04:00
Michael Layzell e7fb4ee297 Bug 1337056 - Part 2: Replace the synchronous ReadPermissions API with async APIs, r=baku
These APIs are intended to use the mechanism defined in Part 1.

Part 3 implements the usage of these APIs to synchronize permissions.

MozReview-Commit-ID: HNKyDPtoaHl
2017-03-14 14:55:49 -04:00
Carsten "Tomcat" Book fb74131fe7 Merge mozilla-central to mozilla-inbound 2017-03-14 14:26:07 +01:00
Andrea Marchesini f9cbf66dfd Bug 1274343 - Add parent-to-child pipe streaming to IPCStream - part 2 - PParentToChild, r=smuag
--HG--
rename : ipc/glue/SendStreamAlloc.h => ipc/glue/IPCStreamAlloc.h
rename : ipc/glue/SendStreamChild.cpp => ipc/glue/IPCStreamChild.cpp
rename : ipc/glue/SendStreamParent.cpp => ipc/glue/IPCStreamDestination.cpp
rename : ipc/glue/SendStream.h => ipc/glue/IPCStreamDestination.h
rename : ipc/glue/SendStreamParent.cpp => ipc/glue/IPCStreamParent.cpp
rename : ipc/glue/SendStreamChild.cpp => ipc/glue/IPCStreamSource.cpp
rename : ipc/glue/SendStream.h => ipc/glue/IPCStreamSource.h
rename : ipc/glue/PChildToParentStream.ipdl => ipc/glue/PParentToChildStream.ipdl
2017-03-14 12:29:43 +01:00
Andrea Marchesini 6ced9f8a25 Bug 1274343 - Add parent-to-child pipe streaming to IPCStream - part 1 - renaming PSendStream to PChildToParentStream, r=smaug
--HG--
rename : ipc/glue/PSendStream.ipdl => ipc/glue/PChildToParentStream.ipdl
2017-03-14 12:28:58 +01:00
Andrea Marchesini a2f4a0ab3a Bug 1346718 - Add a check before using a BlobParent actor, r=qdot 2017-03-14 11:36:22 +01:00
Carsten "Tomcat" Book c1edc7067d merge mozilla-inbound to mozilla-central a=merge 2017-03-13 15:22:26 +01:00
Andrew McCreight b46bfc918b Bug 1345978, part 2 - Check build ids early in content startup. r=billm
If Firefox is updated while it is running, the content process can end
up being a different version than the parent process. This can cause
odd crashes, that will happen repeatedly until the user restarts
Firefox. To handle this better, this patch adds a special build ID
message that is sent early in content process startup. The parent
process intentionally crashes if the build ID for the child process
does not match that of the parent process.

MozReview-Commit-ID: 7D3ggkaLxNS

--HG--
extra : rebase_source : 1f8d917ce01919524f949dd5bedfbbbd557f7ed3
2017-03-10 17:01:38 -08:00