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

135 Коммитов

Автор SHA1 Сообщение Дата
Jonathan Watt 6f36936674 Bug 1362891, part 1 - Add an XRE_IsE10sParentProcess function. r=froydnj
MozReview-Commit-ID: 6neyZj71i3r

--HG--
extra : rebase_source : a172d64a03f2af8b2b1e4820645295c8d64e8118
2017-04-24 09:38:10 +01:00
Jim Chen 53a1107cd1 Bug 1343075 - Use GeckoEditableSupport from PuppetWidget; r=masayuki r=rbarker r=snorp r=esawin
Bug 1343075 - 1a. Add TextEventDispatcherListener::GetIMEUpdatePreference; r=masayuki

Add a GetIMEUpdatePreference method to TextEventDispatcherListener to
optionally control which IME notifications are received by NotifyIME.
This patch also makes nsBaseWidget forward its GetIMEUpdatePreference
call to the widget's native TextEventDispatcherListener.

Bug 1343075 - 1b. Implement GetIMEUpdatePreference for all TextEventDispatcherListener; r=masayuki

This patch implements GetIMEUpdatePreference for all
TextEventDispatcherListener implementations, by moving previous
implementations of nsIWidget::GetIMEUpdatePreference.

Bug 1343075 - 2. Allow setting a PuppetWidget's native TextEventDispatcherListener; r=masayuki

In PuppetWidget, add getter and setter for the widget's native
TextEventDispatcherListener. This allows overriding of PuppetWidget's
default IME handling. For example, on Android, the PuppetWidget's native
TextEventDispatcherListener will communicate directly with Java IME code
in the main process.

Bug 1343075 - 3. Add AIDL interface for main process; r=rbarker

Add AIDL definition and implementation for an interface for the main
process that child processes can access.

Bug 1343075 - 4. Set Gecko thread JNIEnv for child process; r=snorp

Add a JNIEnv* parameter to XRE_SetAndroidChildFds, which is used to set
the Gecko thread JNIEnv for child processes. XRE_SetAndroidChildFds is
the only Android-specific entry point for child processes, so I think
it's the most logical place to initialize JNI.

Bug 1343075 - 5. Support multiple remote GeckoEditableChild; r=esawin

Support remote GeckoEditableChild instances that are created in the
content processes and connect to the parent process GeckoEditableParent
through binders.

Support having multiple GeckoEditableChild instances in GeckoEditable by
keeping track of which child is currently focused, and only allow
calls to/from the focused child by using access tokens.

Bug 1343075 - 6. Add method to get GeckoEditableParent instance; r=esawin

Add IProcessManager.getEditableParent, which a content process can call
to get the GeckoEditableParent instance that corresponds to a given
content process tab, from the main process.

Bug 1343075 - 7. Support GeckoEditableSupport in content processes; r=esawin

Support creating and running GeckoEditableSupport attached to a
PuppetWidget in content processes.

Because we don't know PuppetWidget's lifetime as well as nsWindow's,
when attached to PuppetWidget, we need to attach/detach our native
object on focus/blur, respectively.

Bug 1343075 - 8. Connect GeckoEditableSupport on PuppetWidget creation; r=esawin

Listen to the "tab-child-created" notification and attach our content
process GeckoEditableSupport to the new PuppetWidget.

Bug 1343075 - 9. Update auto-generated bindings; r=me
2017-03-07 22:34:39 -05:00
Mike Hommey ce74ceac47 Bug 1330533 - Remove XRE_LibFuzzerGetFuncs. r=decoder
Now that XRE_LibFuzzerGetFuncs is not used from outside libxul, it can
be inlined in LibFuzzerRunner::Run, simplifying things a little more.

--HG--
extra : rebase_source : 7a09f37444bf02983b232c964d85e7a866221f48
2017-01-12 16:02:50 +09:00
Mike Hommey 7523430127 Bug 1330533 - Use FuzzerDriver directly instead of wrapping it in a libfuzzer_main function. r=decoder
Going further from the previous changes, all libfuzzer_main really does
is call the init function, and then proceed to call the fuzzer driver
with the testing function.

So instead of calling that function for it to do all that, the
LibFuzzerRunner can just call the init function itself, and then
call the fuzzer driver with the testing function.

--HG--
extra : rebase_source : 2eb1a2ae763ef21827471cd32addceacefc1ac5d
2017-01-12 14:44:18 +09:00
Mike Hommey 92c5bff388 Bug 1330533 - Remove argc/argv arguments to XRE_LibFuzzerSetMain. r=decoder
The function given to XRE_LibFuzzerSetMain is called from somewhere that
does have access to argc/argv already, so we can avoid passing them
to XRE_LibFuzzerSetMain.

This actually might fix subtle issues with argc/argv not really matching
reality when calling the LibFuzzerMain function in the current code:
some arguments are handled before the call, and both argc and argv are
modified from within XRE_main, but the values stored for the
LibFuzzerMain call still are the original ones.

Argv being a pointer, and it not being reallocated, the value stored for
the LibFuzzerMain call points to the changed one, but argc, being an
integer, is not modified accordingly.

In fact, it's actually worse, because while the Gecko code doesn't
reallocate argv, gtk_main might. So if some GTK flag is passed on the
command line, there's also a possibility that the LibFuzzerMain function
will do a use-after-free.

So all in all, it's just better to use the set of modified argc/argv
from XRE_main instead of storing them from main().

--HG--
extra : rebase_source : 92b89909eab0fc2f67ce372b959bb0e3ed12cd2b
2017-01-12 11:59:37 +09:00
Mike Hommey 2330dcf840 Bug 1306327 - Move reading application.ini to XRE_main. r=bsmedberg
Reading application.ini involves using nsCOMPtr<nsIFile>, and that can
only happen through the XPCOM glue, which we eventually want to get rid
of.

So, while keeping the command line argument/environment variable
handling in nsBrowserApp, we move the actually parsing of the file to
XRE_main, where things can be handled without the XPCOM glue.

--HG--
extra : rebase_source : 487960a671476d4edae4f568c37efa6563ef4dff
2017-01-10 16:43:23 +09:00
Mike Hommey af19e1f051 Bug 1306327 - Remove the flags argument to XRE_main. r=bsmedberg
This hasn't been used since the removal of the Metro code in bug
1039866, close to two years ago.

--HG--
extra : rebase_source : 58ec1ce63e4231c8006cafd3424675f14ddbf9f1
2017-01-10 14:15:50 +09:00
Benjamin Smedberg d37894f60d Bug 1321593 part A - Refactor nsXREAppData: 1) make nsXREAppData strongly own its members 2) rename it to mozilla::XREAppData 3) separate out the static compiled data into StaticXREAppData 4) Remove XRE_CreateAppData and XRE_FreeAppData 5) remove the struct size and related size-checking code which was only ever useful for cross-version compatibility, r=glandium
MozReview-Commit-ID: CQv1UrSaw4D

--HG--
rename : xpcom/build/nsXREAppData.h => xpcom/build/XREAppData.h
rename : xpcom/glue/AppData.cpp => xpcom/glue/XREAppData.cpp
extra : source : eae2252a519f3ac5850f5110a6a1be45891ea5e9
2016-12-02 09:07:24 -05:00
Sebastian Hengst 27bd22acd7 Backed out changeset eae2252a519f (bug 1321593) for leaks, e.g. in clipboard and jetpack tests. r=backout
--HG--
rename : xpcom/build/XREAppData.h => xpcom/build/nsXREAppData.h
rename : xpcom/glue/XREAppData.cpp => xpcom/glue/AppData.cpp
2016-12-12 22:10:17 +01:00
Benjamin Smedberg 4df1abc2c0 Bug 1321593 part A - Refactor nsXREAppData: 1) make nsXREAppData strongly own its members 2) rename it to mozilla::XREAppData 3) separate out the static compiled data into StaticXREAppData 4) Remove XRE_CreateAppData and XRE_FreeAppData 5) remove the struct size and related size-checking code which was only ever useful for cross-version compatibility, r=glandium
MozReview-Commit-ID: CQv1UrSaw4D

--HG--
rename : xpcom/build/nsXREAppData.h => xpcom/build/XREAppData.h
rename : xpcom/glue/AppData.cpp => xpcom/glue/XREAppData.cpp
extra : rebase_source : c909ee206d31b110c6a38cc466ef24a465ee2ae5
extra : histedit_source : e86c3900412229f99ade29c5b8e3943d943ec718
2016-12-02 09:07:24 -05:00
Randall Barker de17af98b5 Bug 1314466 - part 5, Add service process manager r=snorp 2016-11-14 16:45:23 -08:00
David Anderson 4c2e28b8b6 Add XRE_IsGPUProcess. (bug 1301266 part 1, r=billm) 2016-09-21 22:38:40 -07:00
Christian Holler (:decoder) 3c7149e85d Bug 1289194 - Experimental LibFuzzer integration. r=glandium
MozReview-Commit-ID: 9njDcbltyow

--HG--
extra : rebase_source : 774d25f2ac4e4b1a876e48159333188bc722f940
2016-09-01 15:07:01 +02:00
Sebastian Hengst a66df0b0c2 Backed out changeset 95e68b473e91 (bug 1289194) for failure to process moz.build file. r=backout a=backout
MozReview-Commit-ID: GhfzNoiE808
2016-09-07 18:45:40 +02:00
Christian Holler (:decoder) 055c4fb1dd Bug 1289194 - Experimental LibFuzzer integration. r=glandium
--HG--
extra : histedit_source : a632f3ff76e07562d1854bc68b50499e4b4667a0
2016-09-01 15:07:01 +02:00
Alexandre Lissy 0af5b943b6 Bug 1284674 - Remove NUWA r=cyu
MozReview-Commit-ID: GyMRNzOBKw6

--HG--
extra : rebase_source : 293af1cd55f2035ce6a99f4ebf144059c32a2b8f
2016-08-02 14:54:00 +02:00
David Anderson 52270601eb Add GeckoProcessType_GPU. (bug 1271180 part 3, r=billm)
--HG--
extra : rebase_source : e983b161bf4d26dfc0de0e0da523a66ab25d7baa
2016-06-10 21:54:44 -04:00
Phil Ringnalda 5e0adb7d56 Back out 5 changesets (bug 1271180) for static analysis bustage
CLOSED TREE

Backed out changeset cfb53b780b18 (bug 1271180)
Backed out changeset 204b084385f8 (bug 1271180)
Backed out changeset 353da876be33 (bug 1271180)
Backed out changeset 4472dfbc1dc6 (bug 1271180)
Backed out changeset 81079e787b8a (bug 1271180)

--HG--
rename : ipc/glue/TaskFactory.h => dom/plugins/ipc/TaskFactory.h
2016-06-11 00:46:09 -07:00
David Anderson 39defbc2f7 Add GeckoProcessType_GPU. (bug 1271180 part 3, r=billm)
--HG--
extra : rebase_source : 30353c82c34e03996ff0551330ebe86e2010cbaf
2016-06-10 21:54:44 -04:00
Andrew Swan 1b1d9f5e45 Bug 1270356 Part 1: Add native messaging paths to XRE directory provider r=kmag
MozReview-Commit-ID: 2tjR3r9YySy

--HG--
extra : rebase_source : 1c8da185fd653e91f40cebc5e27ae560a787ef8e
extra : source : 77a30c81f8e830676a23da91b87ab78cda93a4d0
2016-05-12 11:39:27 -07:00
Jed Davis 78e49e2efb Bug 1114647 - Use firefox for child processes instead of plugin-container. r=ted
Disabled on Mac (content processes need to use plugin-container.app for
UI reasons) and on Linux unless --disable-sandboxing (build issues).

Based on work by George Wright <george@mozilla.com>.

--HG--
extra : amend_source : 43986e25743de21e3ddfb7893e3ed550fe6eef76
2016-06-03 12:49:39 -07:00
Stephen Pohl ffe0bf3496 Bug 1027651: Fix comment for XRE_UPDATE_ROOT_DIR. r=rstrong 2016-05-24 22:26:09 -04:00
Bob Owen e809e9f918 Bug 1035125 Part 9: Link Chromium sandbox into firefox.exe instead of having a separate DLL. r=aklotz,glandium
MozReview-Commit-ID: 1vgDPjpcwz3

--HG--
extra : rebase_source : 40966d98ca6c37f30884639d648907b4760ae240
2016-05-15 16:41:40 +01:00
Bob Owen c43bf02cda Bug 1035125 Part 8: Pass sandboxing pointers through XRE_InitChildProcess instead of linking to more functions in xul. r=aklotz,glandium
MozReview-Commit-ID: 5AiktOArpfU

--HG--
extra : rebase_source : 1ba3be949e2bfeb3b67687ab05d43342852ab764
2016-05-15 16:35:22 +01:00
Gijs Kruitbosch 161662dac8 Bug 1191468 - always load app dir add-ons irrespective of enabledScopes, r=Mossop,froydnj
--HG--
extra : commitid : 4O0JNbchonb
extra : rebase_source : f218722dd70f74a45e4dbb461a7faaa3ef1d1d81
extra : amend_source : 538b86815da89ccf5b3e7e42412019064123ccfe
2015-11-17 13:55:31 +00:00
Dave Townsend fd7f1eb306 Bug 1207287: Move the app-shipped system add-ons somewhere where they will be included in up date MARs. r=froydnj r=rhelmer
This moves the app-shipped system add-ons into <appdir>/features. I've created
a new directory provider location for this since it allows us to override the
location without allowing external apps to do so as would be the case with
prefs.

--HG--
extra : commitid : 9lzIzbjvCpK
extra : rebase_source : 1f1f319eac2142ffbe6714289e6fb4e40cfd6088
2015-09-24 16:03:01 -07:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Mike Hommey 7fdec3adb1 Bug 833117 - Replace g_slice_set_config() with G_SLICE environment variable. r=nfroyd,r=karlt
Using g_slice_set_config() fails with newer glib because the slice allocator
now has a static constructor that runs when glib is loaded, consequently
emitting a noisy error message which confuses people into believing it's the
root of their problems.

The only way left to force the slice allocator to use "system" malloc (in
practice, jemalloc) is to set the G_SLICE environment variable to
always-malloc, and that needs to happen before glib is loaded.

Fortunately, the firefox and plugin-container executables don't depend on
glib. Unfortunately, webapprt does, so the problem remains for web apps
running through it. xpcshell and other executables that depend on libxul
directly (as opposed to loading it dynamically) are not covered either.
2015-07-10 09:56:05 +09:00
Gabriele Svelto 17358b10b8 Bug 858928 - Switch XRE_StartupTimelineRecord() from PRTime to TimeStamp. r=froydnj
--HG--
extra : rebase_source : b39bf19f68a124cefaf5ceac2adccb20e05bf279
2015-07-06 18:01:09 +02:00
Juan Gomez 258ad59e3f Bug 1171931 - Refactor duplicated code using XRE_IsParent/ContentProcess. r=froydnj 2015-07-03 18:29:00 -07:00
Ryan VanderMeulen 5f5c327690 Backed out changeset 8b4e4083639e (bug 1171931) for B2G debug emulator bustage. 2015-06-25 19:48:42 -04:00
Juan Gomez 702a59d135 Bug 1171931 - Refactor duplicated code using XRE_IsParent/ContentProcess. r=froydnj
--HG--
extra : rebase_source : 2ecbe6c1dd8a7ad8dc529b53349ad431cf1116c9
2015-06-24 14:11:00 -04:00
Eric Rahm 4879ae86f4 Bug 1165518 - Part 2: Replace prlog.h with Logging.h. rs=froydnj 2015-05-19 11:15:34 -07:00
Benjamin Smedberg 573f0e2266 Bug 1159737 Stop supporting binary XPCOM components except built into the application. r=froydnj sr=bz Some xpcshell tests of binary functionality need to register binary components. Expose a function "registerAppManifest" in the xpcshell environment to make this available to tests without exposing it to addons. r=bholley
--HG--
extra : rebase_source : 1bf47ad1cb8b662ff598c261dae872bc4710e170
2015-05-01 10:23:44 -04:00
Kartikaya Gupta cd5b55f8d6 Bug 1039866 - Rip out a bunch of metro-only code. r=jimm,gavin,rstrong 2015-04-23 15:10:30 -04:00
Andrew McCreight 1e0f87e27d Bug 1151541, part 2 - Fix mode lines in xpcom/. r=froydnj 2015-04-09 10:25:05 -07:00
Mason Chang 9fae9e4367 Bug 1108613. Create an XRE_IsParentProcess to detect if code is running in the parent process. r=roc 2014-12-09 11:21:47 -08:00
Chris Pearce f3af16c459 Bug 1088488 - Add GMPLoader interface to encapsulate loading GMPs, pass that to XRE_InitChildProcess. r=jesup,r=bsmedberg,r=glandium 2014-11-14 21:26:24 +13:00
Cervantes Yu f306f96f76 Bug 1051633: Make sure magic file descriptors in the content process will not be taken for other uses. r=khuey
--HG--
extra : rebase_source : 5e2dedb855dd5e0e6637d6f42c80c69df8081971
2014-09-30 00:00:00 +08:00
Carsten "Tomcat" Book 293a55afc8 Backed out changeset 1e25cd3e8219 (bug 1051633) for B2G ICS Emulator Opt m4 test failures 2014-09-24 11:28:37 +02:00
Cervantes Yu 5d34df52be Bug 1051633: Make sure magic file descriptors in the content process will not be taken for other uses. r=khuey
--HG--
extra : rebase_source : 2c9baf6ac87744d7049c90284990c0aa48e0f058
2014-08-15 17:19:05 +08:00
Birunthan Mohanathas 1368df8aae Bug 1046841 - Convert xpcom/build/ to Gecko style. r=froydnj 2014-08-13 11:45:37 -07:00
Bill McCloskey d52ab46335 Bug 1045847 - Initialize sProcessType really, really early (r=khuey) 2014-08-08 17:52:12 -07:00
Thinker K.F. Li 0d57c5a21f Bug 977026 - Part 3: Preload XPT before calling fork. r=bsmedberg 2014-07-25 20:52:00 -04:00
Thinker K.F. Li e9dc84b5a1 Bug 977026 - Part 2: B2G loader. r=khuey, r=cyu
--HG--
rename : ipc/app/MozillaRuntimeMain.cpp => ipc/contentproc/plugin-container.cpp
2014-07-30 03:24:00 -04:00
Mike Hommey 9424087517 Backout changesets 7ff3cd713466, f8ec5977a454 and c7c37390b46b (bug 977026) for b2g bustage on a CLOSED TREE. 2014-07-29 14:50:41 +09:00
Thinker K.F. Li 05f5436a80 Bug 977026 - part 3: preload XPT before calling fork. r=bsmedberg 2014-07-25 20:52:00 +02:00
Thinker K.F. Li 5a9232dbfc Bug 977026 - part 2: B2G loader. r=khuey,cyu
--HG--
rename : ipc/app/MozillaRuntimeMain.cpp => ipc/contentproc/plugin-container.cpp
2014-07-25 20:52:00 +02:00
Josh Aas 7ec76f43f8 Bug 957928: Gecko Media Plugins implementation. No consumers in Gecko yet. r=bent 2014-05-17 22:05:46 -05:00
Phil Ringnalda 127b904678 Back out a4b51aff4b3c (bug 957928) for build bustage
CLOSED TREE
2014-05-17 17:43:07 -07:00