Bug 1516240 - Part 1: Expose whether a cross-process channel is in use, r=mccr8
authorNika Layzell <nika@thelayzells.com>
Wed, 13 Feb 2019 21:02:51 +0000
changeset 458973 62e70b24ecb84e095f8fb0d8ebf04dead40c2085
parent 458972 e249a6801e6eec2e0557ac67da428bf7d94070aa
child 458974 e4bc2ad58acff7850ba0f5feb226b3bc29c3e758
push id78132
push usernlayzell@mozilla.com
push dateWed, 13 Feb 2019 21:03:57 +0000
treeherderautoland@324d25d3f933 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersmccr8
bugs1516240
milestone67.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1516240 - Part 1: Expose whether a cross-process channel is in use, r=mccr8 Differential Revision: https://phabricator.services.mozilla.com/D19177
ipc/glue/MessageChannel.h
--- a/ipc/glue/MessageChannel.h
+++ b/ipc/glue/MessageChannel.h
@@ -307,16 +307,21 @@ class MessageChannel : HasResultCodes, M
     return mLink ? mLink->Unsound_NumQueuedMessages() : 0;
   }
 
   static bool IsPumpingMessages() { return sIsPumpingMessages; }
   static void SetIsPumpingMessages(bool aIsPumping) {
     sIsPumpingMessages = aIsPumping;
   }
 
+  /**
+   * Does this MessageChannel cross process boundaries?
+   */
+  bool IsCrossProcess() const { return mIsCrossProcess; }
+
 #ifdef OS_WIN
   struct MOZ_STACK_CLASS SyncStackFrame {
     SyncStackFrame(MessageChannel* channel, bool interrupt);
     ~SyncStackFrame();
 
     bool mInterrupt;
     bool mSpinNestedEvents;
     bool mListenerNotified;