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

2943 Коммитов

Автор SHA1 Сообщение Дата
Nathan Froyd b693f3ec5a Bug 1222167 - fix initialization order in GeckoChildProcessHost; r=jld
Member fields are supposed to be initialized in the order they are
declared, but the constructor of GeckoChildProcessHost initialized
mDelegate prior to mSandboxLevel.  This is probably harmless, but it
does cause a warning on clang-cl, so let's fix it.
2015-11-05 15:15:19 -05:00
Bill McCloskey 35328ff29a Bug 1215167 - Forbid unsafe browser CPOWs (disabled by default for now) (r=mrbkap) 2015-11-05 13:17:04 -08:00
Wes Kocher cad6f9789a Backed out changeset 89446bf8d6b8 (bug 1215167) for introducing a hazard
--HG--
extra : commitid : 19K8BX0d4Wz
2015-11-04 16:16:59 -08:00
Bill McCloskey ac2ca63fc1 Bug 1215167 - Forbid unsafe browser CPOWs (disabled by default for now) (r=mrbkap) 2015-11-04 13:40:15 -08:00
Gerald Squelart ccb6be36b4 Bug 1214018 - p4: Use machine_id_mac in GMPLoader - r=cpearce
Having HASH_NODE_ID_WITH_DEVICE_ID #defined is enough for GMPLoader to start
using the Mac version of GetRawMachineId.

Note: The stack (that may contain information gathered during GetRawMachineId)
is not erased, so it could theoretically be possible for a compromised GMP to
find out some sensitive user information. Another bug will deal with this.
2015-10-29 16:27:00 +01:00
Birunthan Mohanathas 9985829ecc Bug 1219392 - Capitalize mozilla::unused to avoid conflicts. r=froydnj 2015-11-02 07:53:26 +02:00
Christoph Kerschbaumer e15fd3a5f0 Bug 1194052 - Add support for internal redirectchain to loadInfo (r=sicking) 2015-10-31 15:18:59 -07:00
huangwenjun c8f2fb627f Bug 1218681 - add plugin-container standalone process code. The Code associate with ARCH. r=hev
---
 dom/plugins/ipc/PluginProcessParent.cpp | 3 +++
 ipc/chromium/src/base/process_util.h    | 5 ++++-
 2 files changed, 7 insertions(+), 1 deletion(-)
2015-10-29 22:19:43 +08:00
Ms2ger adae9c80be Bug 1207539 - Remove !JS_IsRunning(aCx) assertion from RilConsumer::ConnectWorkerToRIL; r=mrbkap
JS_IsRunning has unclear semantics, and is in the process of being removed.
2015-10-27 09:18:11 +01:00
Andrew McCreight 2e351e563c Bug 1217640 - MessageChannel::Call() should delete aMsg when the channel is not connected. r=jld
Otherwise, the message will leak.
2015-10-26 12:38:19 -07:00
Andrew McCreight 6976aecabf Bug 1089837 - Make IPC::Message use MOZ_COUNT_CTOR/DTOR. r=jld 2015-10-26 12:38:19 -07:00
Andrea Marchesini 5fb333826f Bug 1203802 - Websocket Frame Listener API for devtool Network Inspector - part 4 - IPC, r=michal 2015-10-26 15:31:00 +00:00
Aaron Klotz ad79787f87 Bug 1217250 - Fix some IPDL tests that were broken by bug 1212027; r=froydnj 2015-10-21 20:44:34 -04:00
Dragana Damjanovic 35a05c4285 Bug 1175685 - add OriginAttribute to LoadInfo. r=jonas, r=ckerschb, r=michal 2015-10-21 23:47:00 +02:00
Aaron Klotz a6a5a83572 Bug 1213567: Prevent neutering from occurring during CreateWindow(Ex) calls; r=jimm
--HG--
extra : rebase_source : 9b5afc18fe334efbe9210e3d61508bb433c5a72f
2015-10-17 13:28:53 -06:00
Nicholas Nethercote 5b34a25af2 Bug 1216020 - Comment all ALLOW_COMPILER_WARNINGS lines. r=glandium.
DONTBUILD because it only changes comments.

This will hopefully prevent confusion like that in bug 1215903.

--HG--
extra : rebase_source : f0a601d77b5f42b4fbe090693234f934e3becc42
2015-10-19 18:05:20 -07:00
Jonas Sicking 4316c13003 Bug 1182571: Fix nsILoadInfo->GetContentPolicyType API to be less ambigious. Audit and fix all users of it. r=ckerschb 2015-10-19 11:14:54 -07:00
Carsten "Tomcat" Book 677b50bca2 merge b2g-inbound to mozilla-central a=merge 2015-10-19 11:30:00 +02:00
Cervantes Yu eabbe039ec Bug 1215508: Fix the race in accessing the unopened IPC channels in TabChild::PreloadSlowThings(). r=khuey 2015-10-19 14:27:01 +08:00
Nathan Froyd 01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Nathan Froyd 583afa0965 Bug 1207245 - part 3 - switch all uses of mozilla::RefPtr<T> to nsRefPtr<T>; r=ehsan
This commit was generated using the following script, executed at the
top level of a typical source code checkout.

 # Don't modify select files in mfbt/ because it's not worth trying to
 # tease out the dependencies currently.
 #
 # Don't modify anything in media/gmp-clearkey/0.1/ because those files
 # use their own RefPtr, defined in their own RefCounted.h.
find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    grep -v 'mfbt/RefPtr.h' | \
    grep -v 'mfbt/nsRefPtr.h' | \
    grep -v 'mfbt/RefCounted.h' | \
    grep -v 'media/gmp-clearkey/0.1/' | \
    xargs perl -p -i -e '
 s/mozilla::RefPtr/nsRefPtr/g; # handle declarations in headers
 s/\bRefPtr</nsRefPtr</g; # handle local variables in functions
 s#mozilla/RefPtr.h#mozilla/nsRefPtr.h#; # handle #includes
 s#mfbt/RefPtr.h#mfbt/nsRefPtr.h#;       # handle strange #includes
'

 # |using mozilla::RefPtr;| is OK; |using nsRefPtr;| is invalid syntax.
find . -name '*.cpp' -o -name '*.mm' | xargs sed -i -e '/using nsRefPtr/d'

 # RefPtr.h used |byRef| for dealing with COM-style outparams.
 # nsRefPtr.h uses |getter_AddRefs|.
 # Fixup that mismatch.
find . -name '*.cpp' -o -name '*.h'| \
    xargs perl -p -i -e 's/byRef/getter_AddRefs/g'
2015-10-18 00:40:10 -04:00
Andrew McCreight f1620f93e7 Bug 1215151 - Add XPCOM leak checking for base::Thread. r=jld 2015-10-16 09:02:00 -07:00
Nathan Froyd fe57e31ffe Bug 1212027 - part 7 - modify IPDL codegen to store sub-protocols in a hashtable rather than an array; r=jld,nical,cpearce,billm 2015-10-07 14:30:33 -04:00
Nathan Froyd 835e1550cb Bug 1212027 - part 5 - add LoneManagedOrNull for simplifying a lot of upcoming code; r=jld
A lot of existing code has variations on:

  if (ManagedPFooChild().Length()) {
    ...(ManagedPFooChild()[0])...
  }
  // Do something with nullptr, or some other action.

It's pretty reasonable to repeat this code when the managed protocols
are stored in an array; the code gets much less nice when managed
protocols are stored in a hashtable.  Let's write a small utility
function to handle those details for us.  Then when we change the
underlying storage, we only need to update this function, rather than a
bunch of callsites.

ProtocolUtils.h is included by all the generated IPDL headers, so
LoneManagedOrNull should be available everywhere the above pattern would
be encountered.
2015-10-07 20:15:56 -04:00
Nathan Froyd cba63c94d7 Bug 1212027 - part 4 - use class interfaces when destroying managees; r=jld
Similar to the last patch, we copy any sub-protocols a protocol owns
before destroying the sub-protocols.  We do this to ensure a stable
iteration over the sub-protocols, as destroying a sub-protocol may
trigger other sub-protocol deletions.  Let's permit an existing
interface method to do the copying for us, so if the details of how we
store sub-protocols change, this call site is insulated from the
details.
2015-10-07 00:02:27 -04:00
Nathan Froyd 405aa9e2df Bug 1212027 - part 3 - use class interfaces when cloning managees; r=jld
In $PROTOCOL::CloneManages, we reach directly into the other protocol's
sub-protocol arrays to copy them.  It would be better, from a
fewer-places-to-modify-when-things-change point of view if we used the
$PROTOCOL::Managed$SUBPROTOCOL array getter that already exists for this
purpose.  A good compiler should be able to remove the function call
overhead...but cloning managees is probably expensive anyway, so a
function call here doesn't matter much.

It's not immediately obvious to me why we clone and then iterate over
the clone, rather than iterating directly, but perhaps there are subtle
IPDL dragons lurking hereabouts.
2015-10-06 23:59:32 -04:00
Nathan Froyd 8065270d99 Bug 1212027 - part 2 - add a C++ AST type for 'auto'; r=jld
This type will come in handy when we have to add iteration over
hashtables, since it would be a pain to write out the iterator type.
2015-10-06 21:33:13 -04:00
Nathan Froyd 278e9ff8b1 Bug 1212027 - part 1 - rename ipdl lowering helpers to reflect intent, not function; r=jld
The functions:

- _callCxxArrayInsertSorted
- _callCxxArrayRemoveSorted
- _callCxxArrayClear
- _cxxArrayHasElementSorted

are only ever used to touch the managed sub-protocol arrays of a
protocol.  It would be better if they reflected the *intent* of what
they were doing, rather than what C++ function they were calling, since
we're about to change that.
2015-10-06 21:20:07 -04:00
Wes Kocher c2b3d9275b Backed out 2 changesets (bug 1182571) for being a likely cause of the Android S4 errors
Backed out changeset e2b3064dcace (bug 1182571)
Backed out changeset 8153ae231d16 (bug 1182571)
2015-10-15 14:07:06 -07:00
Jonas Sicking 81a15a3362 Bug 1182571: Fix nsILoadInfo->GetContentPolicyType API to be less ambigious. Audit and fix all users of it. r=ckerschb 2015-10-15 12:18:20 -07:00
Andrew McCreight 4d45e43c54 Bug 1213320 - Detect IPC::Channel leaks with the XPCOM leak checker. r=jld 2015-10-14 11:03:47 -07:00
Andrew McCreight c38280f27b Bug 1212986 - Background ChildImpl should delete its Transport. r=mrbkap 2015-10-14 11:03:47 -07:00
Trevor Saunders dda4730c3c bug 1212906 - don't handle windows messages while waiting for a sync a11y ipc message r=billm
Windows messages can trigger sync ipc messages to the child process.  That
means if we handle windows messages while waiting for the response to a sync
a11y ipc message we can end up reentering the code to send ipc messages which
is bad.  Try and avoid this situation by not handling windows messages while
waiting for a sync a11y message.
2015-10-14 14:02:47 -04:00
Bill McCloskey 1b725eb6bc Back out bug 1191143 - Cancel CPOWs from both sides 2015-10-07 11:15:11 -07:00
Bill McCloskey 47202f14e8 Back out bug 1191145 - Stop blocking scripts in CPOW IPCs 2015-10-07 11:15:11 -07:00
Carsten "Tomcat" Book 08997000eb Backed out 2 changesets (bug 1202902) to recking bug 1202902 to be able to reopen inbound on a CLOSED TREE
Backed out changeset 647025383676 (bug 1202902)
Backed out changeset d70c7fe532c6 (bug 1202902)
2015-10-07 14:03:21 +02:00
Carsten "Tomcat" Book e7ef778c9d Backed out 1 changesets (bug 1202902) for causing merge conflicts to mozilla-central
Backed out changeset cfc1820361f5 (bug 1202902)

--HG--
extra : rebase_source : 5d3db72337754bc7ab0ed0c30b2896100411ff92
2015-10-07 12:13:45 +02:00
Shu-yu Guo d06b6030f6 Bug 1202902 - Scripted fix the world. 2015-10-06 14:00:31 -07:00
Wes Kocher 9deac25dd2 Merge m-c to inbound, a=merge 2015-10-06 12:16:50 -07:00
Carsten "Tomcat" Book 918e7c76b4 Merge m-c to b2g-i 2015-10-06 12:24:42 +02:00
Aaron Klotz 6c3bc53e68 Bug 1209464: Fix missing neutered window region in MessageChannel::WaitForInterruptNotify. Regression from bug 1189709; r=jimm
--HG--
extra : rebase_source : 56caab29e3f48b6332f8cd1b47e1e830f75d9c74
extra : source : bed340eab428d1c0d86057771fb19b7090e0af51
2015-10-04 22:17:20 -06:00
Bill McCloskey 0f09a1e1ef Bug 1210821 - Fix possible IPC cancellation bug (r=dvander) 2015-10-05 13:15:15 -07:00
Thomas Zimmermann fd52be5f45 Bug 1209085: Add 6-argument operator () to |UnpackPDUInitOp|, r=joliu 2015-10-06 10:08:14 +02:00
Nicholas Nethercote 399b5d9785 Bug 1205942 (part 5) - Disallow compiler warnings in ipc/chromium. r=jld.
--HG--
extra : rebase_source : 2cb59c74558ee2d05decef0b17c39a15338da782
2015-10-01 17:51:49 -07:00
Nicholas Nethercote e21cd5505a Bug 1205942 (part 4) - Remove GetWinVersion(). r=jld.
Like the last patch, the motivation is to remove a GetVersionEx() call which
triggers deprecation warnings.

Because Windows XP SP2 is the earliest Windows version we support, two of the
existing uses of GetWinVersion() could be removed, because they were checking
for XP or earlier. One other Vista check could be replaced with
mozilla::IsVistaOrLater().

--HG--
extra : rebase_source : 48f032fe92c3897a91866c7ff786a635479c0389
2015-10-01 07:11:30 -07:00
Nicholas Nethercote bf211c7df2 Bug 1205942 (part 3) - Remove unused OS version detection functions from ipc/chromium/. r=jld.
The motivation here is to remove the GetVersionEx() calls in the
Windows-specific code, because that function is deprecated and causes warnings.
The non-Windows versions come along for the ride.

--HG--
extra : rebase_source : ea50b4ce8271ea7281b901eac0542ab4a154adc6
2015-10-01 07:10:13 -07:00
Yoshi Huang f97211a451 Bug 1167100 - User originAttribute in ContentPrincipalInfo. r=bholley 2015-09-23 18:19:06 +08:00
Wes Kocher 6feb6f6051 Merge m-c to inbound, a=merge 2015-09-29 16:13:55 -07:00
Bill McCloskey 6efa744de9 Bug 1191145 - Stop blocking scripts in CPOW IPCs (r=dvander) 2015-09-29 16:11:49 -07:00
Bill McCloskey e633fa0e76 Bug 1191143 - Cancel CPOWs from both sides (r=dvander) 2015-09-29 16:11:49 -07:00