Commit Graph

1955 Commits

Author SHA1 Message Date
Thomas Zimmermann
aaf6e6902d Bug 932728: Use private DBus connection, r=qdot
Using a private DBus connection gives each of its users, such as
Bluetooth, its own connection to the DBus server. This simplifies
the use of DBusWatch structures and ensures that all resources of
a connection are free'd when the connection gets closed.
2013-10-29 16:03:40 +01:00
Thomas Zimmermann
ea7e350a24 Bug 932728: Open only one connection to DBus, r=echou,qdot
Bluetooth maintains two connections to the DBus server and the DBus
system itself maintains a third one. This implies some overhead and
makes the code more difficult to understand.

This patch changes the Bluetooth code to use the connection that is
established by the DBus system.
2013-12-12 12:56:00 +01:00
Thomas Zimmermann
a67d0d8348 Bug 932728: Don't inherit DBusWatcher from RawDBusConnection, r=qdot
DBusWatcher is not a DBus connection, so it shouldn't inherit from
it. This patch converts the inheritance into a class member.
2013-10-29 16:03:39 +01:00
Ryan VanderMeulen
106d512427 Merge b2g-inbound to m-c. 2013-12-11 13:24:26 -05:00
Mike Hommey
1e593d53d5 Bug 944935 - Cleanup some useless AC_CHECK_FUNCS tests in configure.in. r=gps
- HAVE_RANDOM is not checked at all.
- HAVE_STRERROR is not checked in code built using the defines from the main
  configure.
- HAVE_LCHOWN is only checked in nsinstall.c, which means the test is also wrong
  since it's checking for the target instead of the host. Also, lchown is only
  used of the -o and -g options of nsinstall, which, as far as I know, we don't
  use (and if we were, that would fail with nsinstall.py, which explicitly rejects
  them).
- HAVE_FCHMOD is only checked in nsinstall.c, so same as above about the
  correctness of the check. If it's not available, nsinstall.c falls back to
  chmod, which is fine enough for our use.
- HAVE_SNPRINTF is not checked.
- HAVE_MEMMOVE is checked in parser/expat/lib/xmlparse.c, but it's also
  unconditionally defined in expat_config.h which is included from that file.
- HAVE_SETBUF is checked in a couple files, but setbuf is C89 and C99, I think
  it's safe to assume all compilers we support are C89 and C99. Interestingly,
  windows does have it, but since we skip this check on windows, we don't use it.
- HAVE_ISATTY, same as HAVE_SETBUF, except it's POSIX instead of C89/C99.
- HAVE_FLOCKFILE is not checked at all.
- HAVE_STRTOK_R is not checked.
- HAVE_FT_SELECT_SIZE is not checked.
- HAVE_DLADDR is not checked under js/src.
- HAVE_GETPAGESIZE is not checked under js/src (it is in libffi, but ffi uses
  its own configure)
- HAVE_LSTAT64, HAVE_STAT64, HAVE_STATVFS, HAVE_STATVFS64, HAVE_TRUNCATE64 are
  not checked under js/src.
- HAVE_SBRK is not checked under js/src. Moreover,
  js/src/assembler/wtf/Platform.h defines it depending on the platform.
- HAVE_SNPRINTF is not checked under js/src.
- HAVE_HYPOT is not checked under js/src.
- HAVE__UNWIND_BACKTRACE is not checked under js/src.
2013-12-11 10:57:53 +09:00
Ben Turner
6c2ea2a10f Bug 939182 - Prevent mock timers from interfering with the message pump machinery, r=bsmedberg.
--HG--
extra : transplant_source : %2AEm%1D%2C%0Abd%83%B6%BEO%96%D4%BB%13%29%82%9D4
2013-12-09 11:57:29 -08:00
Ben Turner
f8558e4665 Bug 939182 - Integrate the chromium MessageLoop into nsThread, r=bsmedberg.
--HG--
extra : transplant_source : %82%D3%C5%E1%A4%E5%00%1C%C3%82%97v%7F%BA%20Ja%AA%C7%E5
2013-10-23 05:01:24 -07:00
Ben Turner
cd116fdb7b Bug 939182 - Clean up message loop code, r=bsmedberg.
--HG--
extra : transplant_source : -v1T%0A%B7%FC%B3q%CE//%D7%EB%3C%2C1%B4%F8%F1
2013-10-23 01:28:24 -07:00
Ben Turner
12c4024cd8 Bug 947575 - Fix IPDL unit tests on windows, r=bsmedberg.
--HG--
extra : transplant_source : %04B6%5C%3A%ED3E%06o%90%1Bx%60%96b.%0F%27P
2013-11-21 16:51:26 -08:00
Ryan VanderMeulen
ca386608b9 Merge b2g-inbound to m-c. 2013-12-09 17:26:11 -05:00
Birunthan Mohanathas
759ab69b0a Bug 713082 - Part 2: Rename Util.h to ArrayUtils.h. r=Waldo
--HG--
rename : mfbt/Util.h => mfbt/ArrayUtils.h
2013-12-08 21:52:54 -05:00
Birunthan Mohanathas
2a97f4dc0d Bug 713082 - Part 1: Remove unnecessary Util.h includes. r=Waldo 2013-12-08 21:52:33 -05:00
Thomas Zimmermann
16f635c504 Bug 936402: Duplicate connection status in UnixSocketImpl, r=bent
UnixSocketImpl, which mostly runs on the I/O thread, doesn't control
its reference to UnixSocketConsumer. If the connection status is
stored in UnixSocketConsumer, the I/O thread can't read it safely.

This patch duplicates the connection status in UnixSocketImpl, where
reading from the I/O thread is safe. Methods of UnixSocketImpl don't
need to access mConsumer any longer to obtain the connection status.
2013-12-09 14:21:18 +01:00
David Anderson
5fa24d079b Remove bogus assert in RPC calls (bug 937216, r=cjones). 2013-12-05 15:06:29 -08:00
Jim Chen
456545fdc7 Bug 940737 - Monitor Compositor thread hangs using BackgroundHangMonitor; r=bsmedberg r=BenWa 2013-12-04 21:24:28 -05:00
Jacek Caban
08ee154ee6 Bug 945245 - Fixed misc char16_t/wchar_t mismatches. r=ehsan
--HG--
extra : rebase_source : fcab74b295b513f4185cf9c12f31ebaddb7c8e0e
2013-12-03 16:09:50 +01:00
Mike Hommey
bf60896454 Bug 943728 - Replace double quotes with single quotes in Makefiles (or remove them when it makes sense). r=mshal 2013-12-03 06:34:21 +09:00
Nicholas Nethercote
77419f6a47 Bug 936964 (part 7, attempt 2) - Make lots of classes report their own memory consumption, instead of using a separate reporter class. r=mccr8,sr=bz.
* * *
Bug 936964 (part 7b) - Fix a use-after-free found by ASan.

--HG--
extra : rebase_source : d38ab6b63e9d576773baf8e55fa4f7182c33915e
2013-11-07 16:35:30 +11:00
Mike Hommey
9245936f8b Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-27 22:55:07 +09:00
Mike Hommey
2b828323f2 Backout changeset 3fd4b546eed4 (bug 874266) and changeset a35d2e3a872f (bug 942043) for ASAN build bustage and Windows test bustage
--HG--
extra : amend_source : f20d09aeff1c8b5cbd0f1d24c7ce04e86f3aed1d
2013-11-28 14:24:05 +09:00
Mike Hommey
d210f8ff00 Bug 874266 - Move all DEFINES that can be moved to moz.build. r=mshal 2013-11-28 13:08:16 +09:00
Ehsan Akhgari
c3970a73fb Backed out 9 changesets (bug 943660, bug 936964) because of ASAN use-after-free crashes on browser-chrome and mochitest-other
Backed out changeset 85486c4aa3d8 (bug 936964)
Backed out changeset 25312eb71998 (bug 936964)
Backed out changeset 6dbb8333960c (bug 936964)
Backed out changeset da6465ad476f (bug 936964)
Backed out changeset a87ffc992f38 (bug 936964)
Backed out changeset 4ae3a61182db (bug 936964)
Backed out changeset 34e9c3137804 (bug 936964)
Backed out changeset fd1459e71585 (bug 936964)
Backed out changeset 3e8a701d8bdc (bug 943660)

Landed on a CLOSED TREE

--HG--
rename : content/canvas/src/WebGLMemoryTracker.h => content/canvas/src/WebGLMemoryReporterWrapper.h
2013-11-27 20:05:00 -05:00
Nicholas Nethercote
78e4d6490d Bug 936964 (part 7) - Make lots of classes report their own memory consumption, instead of using a separate reporter class. r=mccr8,sr=bz.
--HG--
rename : content/canvas/src/WebGLMemoryReporterWrapper.h => content/canvas/src/WebGLMemoryTracker.h
extra : rebase_source : 611e8d35907959b163aeced1c4ffe1d265048fe6
2013-11-07 16:35:30 +11:00
Mike Hommey
051aa3a2d3 Bug 942031 - Don't link against the js engine when there's no need to. r=mshal 2013-11-24 08:18:50 +09:00
Ehsan Akhgari
e1d2e60498 Bug 941417 - Build ipc/glue in unified mode; r=bent 2013-11-22 13:53:02 -05:00
Ryan VanderMeulen
bef0cc03d8 Merge m-c to fx-team. 2013-11-21 15:55:03 -05:00
Yoshi Huang
21a3a789a6 Bug 939052 - B2G NFC: NFC socket callback prints too much log. r=vicamo 2013-11-21 12:23:36 +08:00
Chris Kitching
7144e8c767 Bug 913985: Part 5 - Refactor the Bridge to use the generated code. r=kats 2013-11-12 10:41:01 -08:00
Landry Breuil
4484b410ad Bug 931354: OpenBSD doesn't provide arc4random_addrandom anymore, fix libevent accordingly by #ifndef'ing out its caller evutil_secure_rng_add_bytes() (which isnt called anywhere) r=joshaas 2013-11-19 17:48:30 +01:00
Nathan Froyd
4c70cf2f1c Bug 939109 - remove stray debugging statement; r=ehsan 2013-11-15 10:15:53 -05:00
Ehsan Akhgari
4602701ea4 Bug 939538 - Build parts of the ipc code in unified mode; r=glandium 2013-11-19 07:38:59 -05:00
Eddy Bruel
9e0cb488f1 Bug 938907 - Get rid of the compile and go flag on ContextOptions; r=bholley 2013-11-19 12:41:42 +01:00
Mike Hommey
a65383e1e9 Bug 939632 - Remove LIBRARY_NAME for leaf libraries. r=gps
Landing on a CLOSED TREE.
2013-11-19 11:50:54 +09:00
Mike Hommey
8ceb917350 Bug 939074 - Remove most LIBXUL_LIBRARY. rs=gps 2013-11-19 11:48:10 +09:00
Mike Hommey
bb6779efe3 Bug 939044 - Remove most definitions of MODULE. r=mshal 2013-11-19 11:47:39 +09:00
Mike Hommey
d7b6f95761 Bug 935881 - Use FINAL_LIBRARY for all (fake) libraries that end up linked in a single other library. r=gps 2013-11-19 11:47:14 +09:00
Tom Schuster
f311064c6e Bug 933834 - Rename and handlify JS_ValueToString. r=terrence,bz 2013-11-16 13:31:36 +01:00
Ms2ger
6b38d3ca3d Backout changesets ded0d64f6786:03f041d03f24 and 30cbd1abde1a (bug 935696, bug 933834 and bug 939194) for build bustage. 2013-11-17 16:39:25 +01:00
Tom Schuster
dd485f9336 Bug 933834 - Rename and handlify JS_ValueToString. r=terrence,bz 2013-11-16 13:31:36 +01:00
Peiyong Lin
7929d92b91 Bug 933821 - Replace IPC_ASSERT(MSG_ROUTING_NONE != msg->routing_id(), "need a route") with PrintMessageRouteError. r=bent 2013-11-14 15:24:18 -05:00
Chuck Lee
651359f856 Bug 930398 - Use ScopedCERTCertificate instead. r=keeler 2013-11-12 10:07:21 +08:00
Ryan VanderMeulen
47a001ba82 Merge m-c to b2g-inbound. 2013-11-05 15:37:26 -05:00
Kyle Huey
390cbab84b Bug 932154: Define postRILMessage with the right argument count. r=vicamo 2013-11-05 22:16:39 +08:00
Garner Lee
8bd7d04054 Bug 933635 - Part 3: NFC IPC Sources. r=yoshi 2013-11-01 17:45:46 +08:00
Garner Lee
71ff563ebc Bug 933635 - Part 1: NFC IPC Makefiles. r=khuey 2013-11-01 14:52:59 +08:00
Jaroslav Kopecký
675e00b139 Bug 933672 - Make sure in-tree libevent isn't built --with-system-libevent. r=glandium 2013-11-04 14:53:29 -05:00
Nathan Froyd
b13405380d Bug 918651 - part 10 - remove the |USING CxxType| rule from the IPDL grammar; r=ehsan 2013-10-18 15:04:07 -04:00
Nathan Froyd
cabc180073 Bug 918651 - part 8 - remove redundant includes from IPDL files; r=ehsan
These include statements have been made redundant by all the qualifications
to the using statements.
2013-10-18 13:34:08 -04:00
Nathan Froyd
86db9223fa Bug 918651 - part 7 - place includes intelligently in generated IPDL files; r=bent
This is where the magic starts to happen.  We move includes from the base
protocol header (${NAME}.h) to the parent and child headers (${NAME}Parent.h
and ${NAME}Child.h) to follow good include hygiene.

For the base protocol header, we examine the set of types used by struct and
union definitions to determine which headers we need to include.

For parent and child headers, we forward declare what we can and include
appropriate headers otherwise.  For forward-declared types, we include the
appropriate headers in the parent and child source files.
2013-10-01 12:55:42 -04:00
Nathan Froyd
3a48a44787 Bug 918651 - part 6 - add unqualifiedTypedefs parameter to _ComputeTypeDeps; r=ehsan
When computing what set of includes a header file needs, we need to know
about all types that protocol-defined types use, not just qualified
ones: both global-scope names and same-namespace-as-protocol names are
valid to use without any sort of qualification.  This flag would normally
not be used in generating actual C++ code and therefore defaults to False.
2013-10-18 12:08:10 -04:00
Nathan Froyd
ad3ed9e5be Bug 918651 - part 5 - qualify all IPDL using statements with required header; r=ehsan 2013-10-01 15:25:07 -04:00
Nathan Froyd
6288378e7a Bug 918651 - part 4 - add keyword arguments to _makeForwardDeclForQClass; r=ehsan
We're going to need these later when we hand-roll our own forward declarations
for classes and structs.
2013-10-01 12:02:57 -04:00
Nathan Froyd
6d2d9bb175 Bug 918651 - part 3 - add optional |from header| qualification to using statements in ipdl; r=bent 2013-09-23 21:20:18 -04:00
Nathan Froyd
afca1db872 Bug 918651 - part 2 - don't munge the translation unit's headers; r=ehsan
Keep the builtin headers separate from the translation unit's headers.
We do this so when we start twiddling with the translation unit's headers,
we don't have to handle cases where those headers are actually builtin
headers.
2013-10-01 11:42:50 -04:00
Nathan Froyd
987974138d Bug 918651 - part 1 - remove unnecessary using statements from IPDL files; r=ehsan 2013-10-18 14:48:13 -04:00
Tom Schuster
b0f36a0a96 Bug 933946 - Remove the rest of the old number conversion functions from SpiderMonkey. r=terrence 2013-11-02 13:48:09 +01:00
Brian R. Bondy
e38cfb36ed Bug 928042 - Add an environment variable to disable content processes sandboxing even when MOZ_CONTENT_SANDBOX is defined. r=aklotz 2013-11-01 19:09:45 -07:00
Tom Schuster
357151515a Bug 933810 - Really remove JS_ValueToECMAUint32. r=terrence f=mccr8 2013-11-01 20:44:05 +01:00
Brian R. Bondy
038d21bf1d Bug 925571 - Initial Windows content process sandbox broker code. r=aklotz 2013-10-30 16:58:52 -07:00
Brian R. Bondy
adb34d6a64 Bug 925571 - Initial Windows sandbox target process (plugin-container) code. r=aklotz 2013-10-30 16:58:49 -07:00
Brian R. Bondy
b77c4127db Bug 925571 - Build config for plugin_container windows sandboxing. r=bsmedberg 2013-10-30 16:58:45 -07:00
Phil Ringnalda
722bd55365 Back out 05be2f73979e (bug 902755) on suspicion of causing Mac debug mochitest-2 assertions
CLOSED TREE
2013-10-31 23:39:28 -07:00
Drew Willcoxon
77aab3c02e Bug 902755 - Fix deadlock in mozilla::ipc::GeckoChildProcessHost::LaunchAndWaitForProcessHandle exposed by turning on new tab page thumbnails. r=bent 2013-10-30 17:39:01 -07:00
Daniel Holbert
bd6e7083c6 Bug 926275: Remove mozalloc_macro_wrappers.h and mozalloc_undef_macro_wrappers.h. r=bsmedberg 2013-10-31 19:39:03 -07:00
Mike Hommey
71a1f5b46c Bug 864774 part 3 - Move some more CPPSRCS to moz.build. r=mshal 2013-10-30 07:51:03 +09:00
Mike Hommey
d56e743f1b Bug 932197 - Put QT generated files in GENERATED_SOURCES. r=gps 2013-11-01 10:30:45 +09:00
Mike Hommey
7688ee6823 Bug 870406 part n - Move more CSRCS to moz.build. r=mshal 2013-11-01 10:30:45 +09:00
Bhargav Gurappadi
72deb74430 Bug 931306 - DBusThread fails to compile on latest compilers. r=tzimmermann, r=qDot 2013-10-25 19:37:57 -07:00
Ed Morley
d54e219b06 Merge mozilla-central and b2g-inbound 2013-10-29 16:34:46 +00:00
Thomas Zimmermann
b8cd66c1fd Bug 930952: Dispatch DBus messages after reading socket, r=qdot
DBusWatcher::Poll currently breaks after reading DBus data from the
socket. Thus, it never processes the data and dispatches the DBus
messages. This patch fixes the code to dispatch DBus messages after
reading the DBus socket.
2013-10-29 17:19:02 +01:00
Thomas Zimmermann
f4e9697133 Bug 931038: Remove blocking DBus interface, r=qdot
All blocking calls to DBus have been replaced by non-blocking
code. This patch removes the corresponding DBus interfaces.
2013-10-29 11:08:16 +01:00
Vicamo Yang
3eb62fc290 Bug 920551 - 2.h/2: fix dom/system/gonk/*. r=hsinyi,khuey 2013-10-29 16:12:45 +08:00
Chuck Lee
a9e2dae016 Bug 928223 - 0002. Change keystore socket permission after created. r=qDot 2013-10-25 10:00:24 +08:00
Chuck Lee
c81c6692fc Bug 928223 - 0001. Add function to perform setup for listen socket. r=qDot echou vicamo yoshi 2013-10-25 10:00:22 +08:00
Ed Morley
54bdd310c4 Merge mozilla-central and b2g-inbound 2013-10-25 12:12:23 +01:00
Mike Hommey
f9cafb1bd9 Bug 930350 - Fix --enable-ipdl-tests build. r=gps. DONTBUILD because NPOTB 2013-10-25 08:39:45 +09:00
Mike Hommey
1d566f7586 Bug 929905 - Consolidate sources in moz.build. r=gps 2013-10-25 08:23:05 +09:00
Mike Hommey
e3011cd1ab Bug 930380 - Make sure *SOURCES only point to existing files. r=gps 2013-10-25 07:58:17 +09:00
Ed Morley
e5afc7eee4 Backed out changeset a8ee7948d5cf (bug 920551) 2013-10-25 10:52:20 +01:00
Thomas Zimmermann
48534b761d Bug 927859: Cleanup DBus thread after DBusWatcher, r=qdot
This patch changes the DBus shutdown to only cleanup the DBus
thread from the main thread after DBusWatcher has completed.
This should ensure that the main thread will not have to wait
for the DBus thread.

--HG--
extra : rebase_source : 09ebb40a4e515ef5b0ebddfc1c3b7187cc546313
2013-10-25 09:31:20 +02:00
Thomas Zimmermann
25cd519f11 Bug 927459: Move helpers to DBusWatcher, r=qdot
PollFdComparator, DBusEventTypes and flag conversion are only used by
DBusWatcher. This patch moves them into DBusWatcher's namespace.

--HG--
extra : rebase_source : 688403e55e139440e6d6d28e9802f8a48d7c355d
2013-10-25 09:31:04 +02:00
Thomas Zimmermann
11476c076c Bug 927459: Add DBusWatcher::Stop, r=qdot
The Stop method encapsulates the code for sending the exit command
to a running DBus watcher.

--HG--
extra : rebase_source : 6963e6fa60b2e1e725046672a45cd325fc40a836
2013-10-25 09:30:54 +02:00
Thomas Zimmermann
33013d2e24 Bug 927459: Move poll functionality to DBusWatcher, r=qdot
The DBus poll functionality is actually part of DBusWatcher. This
patch moves it to a class method.

--HG--
extra : rebase_source : 012813cf1d0967d6c29f7e085e49940570e1d58d
2013-10-25 09:30:20 +02:00
Thomas Zimmermann
fe7861a957 Bug 927459: Cleanup DBusThread, r=qdot
This patch renames DBusThread to DBusWatcher to make its purpose
more clear. Several callback functions for DBus are converted to
methods of DBusWatcher. Their POSIX calls are now protected by
TEMP_FAILURE_RETRY.

--HG--
extra : rebase_source : d8c6963aa8388c462917180d78e8e4289f9e987a
2013-10-25 09:30:09 +02:00
Vicamo Yang
85ce55ab0a Bug 920551 - 2.h/2: fix dom/system/gonk/*. r=hsinyi,khuey 2013-10-25 11:07:44 +08:00
Mike Hommey
61124c1afc Bug 921492 - Make StrictOrderingOnAppendList use actual alphabetical sorting. r=mshal,r=gps 2013-10-24 08:05:43 +09:00
Mike Hommey
e2ae65f67a Bug 913268 - Make CPP_SOURCES a StrictOrderingOnAppendList. r=mshal 2013-10-24 08:00:23 +09:00
Mike Hommey
40d13924dc Bug 930896 - Keep track of files generated by a build backend. r=gps 2013-10-29 08:00:30 +09:00
Birunthan Mohanathas
babfc6b761 Bug 784739 - Switch from NULL to nullptr in miscellaneous directories; r=ehsan
--HG--
extra : rebase_source : 9335e9b4b0ac02e8066fbb79797bbc0d3fd73874
2013-10-23 16:36:09 -04:00
Shawn Huang
db3e2aadbe Bug 880610: Part2-Add build flag in UnixSocket to distinguish between bluez and bluedroid stack, r=echou 2013-10-23 14:12:24 +08:00
Shawn Huang
8edfdaf15d Bug 880610: Part1-Add build flag to support both bluez/bluedroid stacks, r=glandium 2013-10-23 14:12:24 +08:00
Wes Kocher
7fa368925b Merge m-c to inbound 2013-10-21 20:47:53 -04:00
Wes Kocher
cac2099286 Merge b2g-inbound to m-c 2013-10-21 20:30:58 -04:00
Eric Chou
78d847180e Backed out changeset 089f015f15bb and e907ab075ec8 (bug 880610) for hitting MOZ_ASSERT 2013-10-19 16:01:25 +08:00
David Anderson
4fb10982c2 Fix landing fail for bug 901789 (bug 924121, r=bsmedberg). 2013-10-21 16:19:40 -07:00
Carsten "Tomcat" Book
ba4b28bb05 Merge mozilla-central to mozilla-inbound 2013-10-18 14:13:10 +02:00
Landry Breuil
6ed68d2f7b Bug 927810: Fix ipc/chromium after p_psflags changes in struct kinfo_proc on OpenBSD. r=glandium 2013-10-18 11:13:45 +02:00
Shawn Huang
2b492aa310 Bug 880610: Part2-Add build flag in UnixSocket to distinguish between bluez and bluedroid stack. r=echou 2013-10-17 18:25:55 +08:00
Shawn Huang
52b40d99a8 Bug 880610: Part1-Add build flag to support both bluez/bluedroid stacks, r=glandium 2013-10-17 18:25:50 +08:00
Joshua Cranmer
9e681482cf Bug 900526, part 4: Migrate FINAL_TARGET and XPI_NAME to moz.build, r=gps 2013-10-21 13:09:06 -05:00
Nicholas Cameron
deed89ed73 Bug 925317. Check shmems are tracked whenever we send them across IPC. r=BenWa,bent 2013-10-21 16:23:42 +02:00
Ehsan Akhgari
81f6c32486 Backed out changeset 5373095214d9 (debugging patch for bug 924771) because it is no longer needed 2013-10-20 09:24:06 -04:00
Ehsan Akhgari
2ea3973d81 Debugging patch for bug 924771, landed on a CLOSED TREE 2013-10-19 13:35:13 -04:00
Chuck Lee
3b1493a373 Bug 789217 - 0002. Implement keystore. r=qdot 2013-10-01 12:09:56 +08:00
Chuck Lee
dcf61fcabb Bug 789217 - 0001. Add skeleton for keystore. r=khuey 2013-10-01 12:09:54 +08:00
Daniel Holbert
56f60d52a3 Bug 925243: Mark ipc/ipdl as FAIL_ON_WARNINGS. r=ehsan 2013-10-10 13:44:13 -07:00
Cervantes Yu
f4d4c52d41 Bug 922461: fix unused variable in CloneManagees() of actors that doesn't manage other protocols. r=bent 2013-10-10 09:17:01 -07:00
Nathan Froyd
ef10113542 Bug 924410 - don't generate typedefs in Message subclasses; r=ehsan
There's no reason for them to be there, since Message subclasses are nothing
more than a constructor and a logging method.
2013-10-01 12:50:18 -04:00
Eric Chou
a2a3c126f7 Bug 923369 - Return true when RawDBusConnection::SendWithError() executed without any error, r=tzimmerman, r=qdot 2013-10-05 14:35:00 +08:00
Ms2ger
bc14e4aa9c Merge m-c to inbound. 2013-10-03 11:09:17 +02:00
Ms2ger
7ffcd856c2 Bug 900980 - Part a: Move unconditional assignments to EXPORT_LIBRARY to moz.build; rs=gps 2013-10-03 09:11:13 +02:00
Ms2ger
19611ee15b Bug 912099 - Part b: Make sure CPP_SOURCES only points to existing files in ipc/chromium; r=mshal 2013-10-03 09:10:00 +02:00
Ryan VanderMeulen
5dc1c55908 Merge m-c to inbound. 2013-10-01 17:23:59 -04:00
Ed Morley
c12b7139c6 Merge mozilla-central and b2g-inbound 2013-10-01 12:00:25 +01:00
Thomas Zimmermann
19ae300ab9 Bug 919913: Introduce DBusReplyCallback, r=qdot,echou
DBusReplyCallback replaces the removed DBusCallback as type for
reply-handler functions. Bluetooth, the only user of DBus, has
been updated as well.
2013-10-01 10:20:55 +02:00
Thomas Zimmermann
2f4cef68a1 Bug 919913: Cleanup DBusUtils, r=qdot
This patch cleans up the DBus utilitys and helper classes. All functions
for sending have been removed. Their users have been converted to the
new methods in RawDBusConnection. Include statements have been cleaned
up as well. Some methods of DBusMessageRefPtr have been moved from the
header to the source file to prevent inclusion of the DBus API from within
the header file.
2013-10-01 10:20:39 +02:00
Thomas Zimmermann
7eaed0c5d5 Bug 919913: Add send methods to RawDBusConnection, r=qdot
This patch adds methods for sending DBus messages to the class
RawDBusConnection. There are 3 types of interfaces.

 - Send             Sends a message over DBus. No error checking or
                    handling of replies is performed. These methods
                    do not block the sending thread.

 - SendWithReply    Sends a message over DBus and runs a call-back
                    function for the reply. This should be the default
                    case for most scenarios. These methods do not
                    block the sending thread.

 - SendWithError    Sends a message over DBus and waits for the reply
                    or an error. This interface has only been added for
                    some existing code that can safely block the sending
                    thread. Don't use it in new code.

These 3 types of interfaces represent what is currently used of the
existing send functions in DBusUtils. When all users have been converted
to the new methods, the interfaces in DBusUtils can be removed.
2013-10-01 10:20:21 +02:00
Mark Hammond
6337687f5c Bug 920397 part 3 - Ensure PContentParent doesn't close process handles multiple times. r=bsmedberg 2013-10-01 10:56:16 +10:00
Mark Hammond
9b5805c788 Bug 920397 part 2 - MessageChannel::~MessageChannel() now asserts that closing the handle succeeded. r=bsmedberg 2013-10-01 10:56:16 +10:00
Mark Hammond
041acb9024 Bug 920397 part 1 - base::CloseProcessHandle() checks result in debug builds and is used everywhere a process handle is closed. r=bsmedberg 2013-10-01 10:56:15 +10:00
David Anderson
c8133fee65 Rename IPDL's RPC to Interrupt (bug 910020, r=bent).
--HG--
rename : ipc/ipdl/test/cxx/PTestRPCErrorCleanup.ipdl => ipc/ipdl/test/cxx/PTestInterruptErrorCleanup.ipdl
rename : ipc/ipdl/test/cxx/PTestRPCRaces.ipdl => ipc/ipdl/test/cxx/PTestInterruptRaces.ipdl
rename : ipc/ipdl/test/cxx/PTestRPCShutdownRace.ipdl => ipc/ipdl/test/cxx/PTestInterruptShutdownRace.ipdl
rename : ipc/ipdl/test/cxx/PTestRacyRPCReplies.ipdl => ipc/ipdl/test/cxx/PTestRacyInterruptReplies.ipdl
rename : ipc/ipdl/test/cxx/TestRPCErrorCleanup.cpp => ipc/ipdl/test/cxx/TestInterruptErrorCleanup.cpp
rename : ipc/ipdl/test/cxx/TestRPCErrorCleanup.h => ipc/ipdl/test/cxx/TestInterruptErrorCleanup.h
rename : ipc/ipdl/test/cxx/TestRPCRaces.cpp => ipc/ipdl/test/cxx/TestInterruptRaces.cpp
rename : ipc/ipdl/test/cxx/TestRPCRaces.h => ipc/ipdl/test/cxx/TestInterruptRaces.h
rename : ipc/ipdl/test/cxx/TestRPCShutdownRace.cpp => ipc/ipdl/test/cxx/TestInterruptShutdownRace.cpp
rename : ipc/ipdl/test/cxx/TestRPCShutdownRace.h => ipc/ipdl/test/cxx/TestInterruptShutdownRace.h
rename : ipc/ipdl/test/cxx/TestRacyRPCReplies.cpp => ipc/ipdl/test/cxx/TestRacyInterruptReplies.cpp
rename : ipc/ipdl/test/cxx/TestRacyRPCReplies.h => ipc/ipdl/test/cxx/TestRacyInterruptReplies.h
rename : ipc/ipdl/test/ipdl/error/rpcMessageCompress.ipdl => ipc/ipdl/test/ipdl/error/intrMessageCompress.ipdl
rename : ipc/ipdl/test/ipdl/error/tooWeakRPCAsync.ipdl => ipc/ipdl/test/ipdl/error/tooWeakInterruptAsync.ipdl
rename : ipc/ipdl/test/ipdl/ok/rpcProtocol.ipdl => ipc/ipdl/test/ipdl/ok/intrProtocol.ipdl
2013-09-30 17:27:45 -07:00
Cervantes Yu
eaf8730772 Bug 771765 - Support template content process, part 9: allocating a toplevel protocol should return itself. r=dzbarsky
Reverse the effect in bug 879475 part 14 since we need to keep track of open protocols in the Nuwa process.
2013-09-26 12:19:09 +08:00
Ryan VanderMeulen
4dd576fb2f Merge m-c to inbound. 2013-09-30 16:51:06 -04:00
Benjamin Smedberg
ac8ae5b462 Bug 920695 part A - move xpcshell code into libxul and make the xpcshell binary just a stub, r=bholley
--HG--
rename : js/xpconnect/shell/xpcshell.cpp => js/xpconnect/src/XPCShellImpl.cpp
rename : js/xpconnect/shell/jsshell.msg => js/xpconnect/src/jsshell.msg
extra : rebase_source : 9a2ab7508e3cb7a6bfec6b1e98f49799221d1376
2013-09-30 16:09:28 -04:00
Vicamo Yang
dcaf2bced0 Bug 919982: B2G RIL - read Gonk property "ro.moz.ril.numclients" instead. r=hsinyi 2013-09-30 17:24:54 +08:00
Nathan Froyd
b8ba20bc39 Bug 921563 - part 2 - delete typedefs and using statements from global scope in IPDL C++ files; r=gps 2013-09-27 13:14:47 -04:00
Nathan Froyd
7f284c8cab Bug 921563 - part 1 - declare return types in IPDL C++ with C++0x late return syntax; r=gps
Every IPDL C++ class contains a bunch of typedefs.

Every IPDL C++ source file contains a bunch of typedefs and using statements
for the exact same types.

Why is that?

Because the class itself is not in scope for name lookup of return types of C++
methods.  This limitation is annoying, but it makes sense.  The typedefs and
using statements therefore exist so we can be a little sloppy about return
types.

Let's stop being sloppy and polluting the global namespace inside these
files.  Less pollution makes it easier to smash the IPDL files together for
unified compilation.  One could do this by qualifying all necessary return
types...or we could just use the C++0x late return syntax, which guarantees the
class *is* in scope for name lookup.  I like this version a lot better.
2013-09-27 13:50:20 -04:00
David Anderson
cd16ae286d Introduce new RPC messaging semantics (bug 910493 part 1, r=cjones). 2013-10-01 09:15:03 -07:00
David Anderson
f0500f6a4e Combine AsyncChannel, SyncChannel, and RPCChannel into one class (bug 901789, r=cjones,bent).
--HG--
rename : ipc/glue/RPCChannel.cpp => ipc/glue/MessageChannel.cpp
rename : ipc/glue/RPCChannel.h => ipc/glue/MessageChannel.h
2013-09-27 18:42:08 -07:00
Ryan VanderMeulen
fb2d6dc1a4 Backed out 6 changesets (bug 913985) for suspicion of causing intermittent Android crashes on a CLOSED TREE.
Backed out changeset de21920d2b8e (bug 913985)
Backed out changeset f0f5497d65bb (bug 913985)
Backed out changeset 1e16ca4ad801 (bug 913985)
Backed out changeset 9c069a0820ea (bug 913985)
Backed out changeset 274df3abc991 (bug 913985)
Backed out changeset 05fe8b17516a (bug 913985)

--HG--
rename : build/annotationProcessors/AnnotationInfo.java => build/annotationProcessors/MethodWithAnnotationInfo.java
rename : build/annotationProcessors/utils/AlphabeticAnnotatableEntityComparator.java => build/annotationProcessors/utils/AlphabeticMethodComparator.java
rename : build/annotationProcessors/utils/GeneratableElementIterator.java => build/annotationProcessors/utils/GeneratableEntryPointIterator.java
rename : mobile/android/base/mozglue/generatorannotations/WrapElementForJNI.java => mobile/android/base/mozglue/GeneratableAndroidBridgeTarget.java
rename : mobile/android/base/mozglue/generatorannotations/OptionalGeneratedParameter.java => mobile/android/base/mozglue/OptionalGeneratedParameter.java
2013-09-27 17:02:09 -04:00
Nathan Froyd
51b40471b2 Bug 914826 - part 6 - don't include basictypes.h or nscore.h in ipdl headers; r=ehsan 2013-09-10 15:55:39 -04:00
Nathan Froyd
49ff4edd5d Bug 914826 - part 5 - provide for cpp-only include files, starting with nsIFile.h and GeckoProfiler.h; r=ehsan 2013-09-10 15:45:16 -04:00
Nathan Froyd
0579fe5481 Bug 914826 - part 3 - forward-declare nsIFile for GetMinidump() declaration; r=ehsan 2013-09-10 15:35:51 -04:00
Nathan Froyd
ef5b2c6acc Bug 914826 - part 2 - rename builtinIncludes to builtinHeaderIncludes; r=ehsan 2013-09-10 15:34:44 -04:00
Nathan Froyd
92a447e6a7 Bug 914826 - part 1 - use static_assert instead of COMPILE_ASSERT in IPCMessageStart.h; r=ehsan 2013-09-10 15:07:10 -04:00
Chris Kitching
b3fd693d20 Bug 913985: Part 5 - Refactor the Bridge to use the generated code. r=kats 2013-09-27 10:10:37 -04:00
Kartikaya Gupta
7f22c5c405 Back out d9bdfdfda06e to dd17e0758a00 (bug 913985) due to incorrect author on some of the patches. r=backout
--HG--
rename : build/annotationProcessors/AnnotationInfo.java => build/annotationProcessors/MethodWithAnnotationInfo.java
rename : build/annotationProcessors/utils/AlphabeticAnnotatableEntityComparator.java => build/annotationProcessors/utils/AlphabeticMethodComparator.java
rename : build/annotationProcessors/utils/GeneratableElementIterator.java => build/annotationProcessors/utils/GeneratableEntryPointIterator.java
rename : mobile/android/base/mozglue/generatorannotations/WrapElementForJNI.java => mobile/android/base/mozglue/GeneratableAndroidBridgeTarget.java
rename : mobile/android/base/mozglue/generatorannotations/OptionalGeneratedParameter.java => mobile/android/base/mozglue/OptionalGeneratedParameter.java
2013-09-27 10:25:23 -04:00
Chris Kitching
96d931b9eb Bug 913985: Part 5 - Refactor the Bridge to use the generated code. r=kats 2013-09-27 10:10:37 -04:00
Gregory Szorc
9d660cc01b Bug 921070 - Remove precompile tier; r=glandium
It made sense at the time. We now have inverted tiers and will soon have
derecursified building. This doesn't make sense any more.
2013-09-26 16:05:10 -07:00
Benoit Girard
a9670206fe Bug 919712 - Add labels in IPC message wait. r=benjamin 2013-09-24 11:40:01 -04:00
David Zbarsky
ff4ab2e771 Bug 879475: Allocing an actor for a bridged or opened protocol should return bool r=jlebar
Conflicts:
	dom/ipc/ContentChild.cpp
	dom/ipc/ContentChild.h
2013-09-23 17:54:25 -04:00
Ehsan Akhgari
b4cc06df88 Bug 918923 - Part 2: Switch to #including nsString.h in code using the internal strings API; r=bsmedberg 2013-09-23 13:25:00 -04:00
Mike Shal
a06509978c Bug 920915 - Use correct manifest dependencies; r=gps 2013-09-26 15:27:17 -04:00
Thinker Lee ext:(%2C%20Cervantes%20Yu%20%3Ccyu%40mozilla.com%3E)
677706cd20 Bug 771765 - Support template content process, part 8: process initialization flow changes. r=khuey
Changes initialization code for the template process:
* Let the process run for NUWA_PREPARATION_TIME ms and then start freezing the threads.
* Delay android binder thread pool creation after the content process is forked from the template and other thread recreation has finished.
* Poke the app shell after the content process is forked from the template.
2013-06-03 18:14:46 +08:00
Thinker Lee ext:(%2C%20Cervantes%20Yu%20%3Ccyu%40mozilla.com%3E)
1eb6567bb0 Bug 771765 - Support template content process, part 7: Don't schedule timer in the message pump if template process is ready. r=khuey 2013-06-03 18:14:44 +08:00
Thinker Lee ext:(%2C%20Cervantes%20Yu%20%3Ccyu%40mozilla.com%3E)
d6da7b763f Bug 771765 - Support template content process, part 6: support re-creation of the threads created in the template process. r=khuey, r=jorendorff
The threads that are frozen/recreated include:
* ImageBridgeChildThread.
* Image decoding thread pool.
* IPC thread (checkpointed, but not frozen).
* GC Helper thread.
* XPC runtime watchdog thread.
* Socket transport service thread/thread pool.
* Memory pressure watcher.
* Timer thread.
* DOM promise worker.
2013-06-03 18:14:42 +08:00
Thinker Lee ext:(%2C%20Cervantes%20Yu%20%3Ccyu%40mozilla.com%3E)
3adf8353b4 Bug 771765 - Support template content process, part 4: Clone IPC protocol objects that will be up when the template process is ready. r=khuey, r=bent 2013-06-03 18:14:37 +08:00
Thinker Lee ext:(%2C%20Cervantes%20Yu%20%3Ccyu%40mozilla.com%3E)
8ec656a38c Bug 771765 - Support template content process, part 3: IPC glue and IPDL codegen to support protocol cloning. r=bent 2013-05-31 21:16:57 +08:00
Thinker Lee ext:(%2C%20Cervantes%20Yu%20%3Ccyu%40mozilla.com%3E)
7d20b19ad7 Bug 771765 - Support template content process, part 2: IPC and glue changes. r=bent
Changes include:
* Getting/resetting platform thread ID.
* Creating an IPC channel with existing file descriptor sent from the template process.
* Child process host with existing process forked from the template.
2013-05-31 21:16:54 +08:00
Nathan Froyd
288be756b6 Bug 909922 - don't pragma pack ipc message headers; r=bent
The IPC::Message header is surrounded by:

#pragma pack(push,2)
...
#pragma pack(pop)

which (at least on GCC) specifies that structure members defined lexically
within the pragma should be two-byte aligned, rather than the ABI's declared
alignment.

But for IPC::Message::Header, this is a silly requirement, as everything there
is four bytes; there's no reason to pack the members any tighter.  And packing
tighter means that strict alignment platforms (like ARM) need to use more
complex code for something as simple as storing to one of the members--like
when we set a message's request ID, over and over and over.  The current code
for setting a message's request ID on ARM looks like:

     264:	6863      	ldr	r3, [r4, #4]
     266:	696a      	ldr	r2, [r5, #20]
     268:	809a      	strh	r2, [r3, #4]
     26a:	0c12      	lsrs	r2, r2, #16
     26c:	80da      	strh	r2, [r3, #6]

With the patch, it looks like:

     264:	6863      	ldr	r3, [r4, #4]
     266:	696a      	ldr	r2, [r5, #20]
     268:	605a      	str	r2, [r3, #4]

Only four bytes, but multiplied over several hundred set_routing_id calls, it
saves some code size and runtime.  I verified that the header's length doesn't
change by looking at debug information.
2013-08-27 16:32:44 -04:00