From fd7dc9022e42398651c7f89a36c49d1b2e64a1be Mon Sep 17 00:00:00 2001 From: Joshua Cranmer Date: Thu, 18 Jul 2013 21:23:32 -0500 Subject: [PATCH] Bug 884061 - Part 3m: Use NS_DECL_THREADSAFE_ISUPPORTS in ipc/, r=bent --HG-- extra : rebase_source : 77f707d086624cc908a4e39935aa2a03f16543fb --- ipc/glue/FileDescriptorUtils.cpp | 2 +- ipc/glue/FileDescriptorUtils.h | 2 +- ipc/glue/MessagePump.cpp | 2 +- ipc/glue/MessagePump.h | 2 +- ipc/glue/RPCChannel.h | 15 ++++----------- 5 files changed, 8 insertions(+), 15 deletions(-) diff --git a/ipc/glue/FileDescriptorUtils.cpp b/ipc/glue/FileDescriptorUtils.cpp index 150354c2ba43..dbd390c6e356 100644 --- a/ipc/glue/FileDescriptorUtils.cpp +++ b/ipc/glue/FileDescriptorUtils.cpp @@ -36,7 +36,7 @@ CloseFileRunnable::~CloseFileRunnable() } } -NS_IMPL_THREADSAFE_ISUPPORTS1(CloseFileRunnable, nsIRunnable) +NS_IMPL_ISUPPORTS1(CloseFileRunnable, nsIRunnable) void CloseFileRunnable::Dispatch() diff --git a/ipc/glue/FileDescriptorUtils.h b/ipc/glue/FileDescriptorUtils.h index 4cabd06ae40c..81a9ae178cf7 100644 --- a/ipc/glue/FileDescriptorUtils.h +++ b/ipc/glue/FileDescriptorUtils.h @@ -31,7 +31,7 @@ public: { } #endif - NS_DECL_ISUPPORTS + NS_DECL_THREADSAFE_ISUPPORTS NS_DECL_NSIRUNNABLE void Dispatch(); diff --git a/ipc/glue/MessagePump.cpp b/ipc/glue/MessagePump.cpp index e392b0ec2796..3aecb768d87b 100644 --- a/ipc/glue/MessagePump.cpp +++ b/ipc/glue/MessagePump.cpp @@ -23,7 +23,7 @@ using mozilla::ipc::MessagePump; using mozilla::ipc::MessagePumpForChildProcess; using base::TimeTicks; -NS_IMPL_THREADSAFE_ISUPPORTS2(DoWorkRunnable, nsIRunnable, nsITimerCallback) +NS_IMPL_ISUPPORTS2(DoWorkRunnable, nsIRunnable, nsITimerCallback) NS_IMETHODIMP DoWorkRunnable::Run() diff --git a/ipc/glue/MessagePump.h b/ipc/glue/MessagePump.h index 68954cca5b5a..c447f7ab7bb3 100644 --- a/ipc/glue/MessagePump.h +++ b/ipc/glue/MessagePump.h @@ -29,7 +29,7 @@ public: DoWorkRunnable(MessagePump* aPump) : mPump(aPump) { } - NS_DECL_ISUPPORTS + NS_DECL_THREADSAFE_ISUPPORTS NS_DECL_NSIRUNNABLE NS_DECL_NSITIMERCALLBACK diff --git a/ipc/glue/RPCChannel.h b/ipc/glue/RPCChannel.h index 13ef0764878e..d848722817cc 100644 --- a/ipc/glue/RPCChannel.h +++ b/ipc/glue/RPCChannel.h @@ -15,7 +15,7 @@ #include "base/basictypes.h" -#include "nsAtomicRefcnt.h" +#include "nsISupportsImpl.h" #include "mozilla/ipc/SyncChannel.h" #include "nsAutoPtr.h" @@ -392,22 +392,15 @@ private: { public: RefCountedTask(CancelableTask* aTask) - : mTask(aTask) - , mRefCnt(0) {} + : mTask(aTask) {} ~RefCountedTask() { delete mTask; } void Run() { mTask->Run(); } void Cancel() { mTask->Cancel(); } - void AddRef() { - NS_AtomicIncrementRefcnt(mRefCnt); - } - void Release() { - if (NS_AtomicDecrementRefcnt(mRefCnt) == 0) - delete this; - } + + NS_INLINE_DECL_THREADSAFE_REFCOUNTING(RefCountedTask) private: CancelableTask* mTask; - nsrefcnt mRefCnt; }; //