зеркало из https://github.com/mozilla/gecko-dev.git
Backed out 2 changesets (bug 1755594) for causing bp-hybrid bustage on TeeState.cpp. CLOSED TREE
Backed out changeset 82a58b494f74 (bug 1755594) Backed out changeset b347a6be8478 (bug 1755594)
This commit is contained in:
Родитель
7896427e10
Коммит
dafaf9d404
|
@ -472,23 +472,4 @@ NS_DEFINE_STATIC_IID_ACCESSOR(nsWrapperCache, NS_WRAPPERCACHE_IID)
|
|||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(_class)
|
||||
|
||||
#define NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_WITH_JS_MEMBERS( \
|
||||
class_, native_members_, js_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(class_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(class_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK( \
|
||||
MOZ_FOR_EACH_EXPAND_HELPER native_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(MOZ_FOR_EACH_EXPAND_HELPER js_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER \
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(class_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE( \
|
||||
MOZ_FOR_EACH_EXPAND_HELPER native_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(class_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBERS( \
|
||||
MOZ_FOR_EACH_EXPAND_HELPER js_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
#endif /* nsWrapperCache_h___ */
|
||||
|
|
|
@ -71,11 +71,22 @@ inline void ImplCycleCollectionUnlink(
|
|||
namespace mozilla::dom {
|
||||
|
||||
// Only needed for refcounted objects.
|
||||
NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_WITH_JS_MEMBERS(ReadableStream,
|
||||
(mGlobal, mController,
|
||||
mReader, mErrorAlgorithm,
|
||||
mNativeUnderlyingSource),
|
||||
(mStoredError))
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(ReadableStream)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(ReadableStream)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mGlobal, mController, mReader,
|
||||
mErrorAlgorithm, mNativeUnderlyingSource)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER
|
||||
tmp->mStoredError.setNull();
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(ReadableStream)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mGlobal, mController, mReader,
|
||||
mErrorAlgorithm, mNativeUnderlyingSource)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(ReadableStream)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mStoredError)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTING_ADDREF(ReadableStream)
|
||||
NS_IMPL_CYCLE_COLLECTING_RELEASE(ReadableStream)
|
||||
|
|
|
@ -29,13 +29,24 @@ ReadableStreamBYOBRequest::~ReadableStreamBYOBRequest() {
|
|||
mozilla::DropJSObjects(this);
|
||||
}
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_WITH_JS_MEMBERS(ReadableStreamBYOBRequest,
|
||||
(mGlobal, mController),
|
||||
(mView))
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(ReadableStreamBYOBRequest)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(ReadableStreamBYOBRequest)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mGlobal, mController)
|
||||
tmp->mView = nullptr;
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(ReadableStreamBYOBRequest)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mGlobal, mController)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTING_ADDREF(ReadableStreamBYOBRequest)
|
||||
NS_IMPL_CYCLE_COLLECTING_RELEASE(ReadableStreamBYOBRequest)
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(ReadableStreamBYOBRequest)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mView)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(ReadableStreamBYOBRequest)
|
||||
NS_WRAPPERCACHE_INTERFACE_MAP_ENTRY
|
||||
NS_INTERFACE_MAP_ENTRY(nsISupports)
|
||||
|
|
|
@ -14,16 +14,38 @@
|
|||
|
||||
namespace mozilla::dom {
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_WITH_JS_MEMBERS(TeeState,
|
||||
(mStream, mReader, mBranch1, mBranch2,
|
||||
mCancelPromise, mPullAlgorithm),
|
||||
(mReason1, mReason2))
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(TeeState)
|
||||
NS_IMPL_CYCLE_COLLECTING_ADDREF(TeeState)
|
||||
NS_IMPL_CYCLE_COLLECTING_RELEASE(TeeState)
|
||||
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(TeeState)
|
||||
NS_INTERFACE_MAP_ENTRY(nsISupports)
|
||||
NS_INTERFACE_MAP_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(TeeState)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mStream)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mReader)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mBranch1)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mBranch2)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mCancelPromise)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mPullAlgorithm)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(TeeState)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mStream)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mReader)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mBranch1)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mBranch2)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mCancelPromise)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mPullAlgorithm)
|
||||
tmp->mReason1.setNull();
|
||||
tmp->mReason2.setNull();
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(TeeState)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mReason1)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mReason2)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
TeeState::TeeState(JSContext* aCx, ReadableStream* aStream,
|
||||
bool aCloneForBranch2)
|
||||
: mStream(aStream),
|
||||
|
|
|
@ -9,8 +9,20 @@
|
|||
using namespace mozilla::dom;
|
||||
|
||||
// UnderlyingSinkStartCallbackHelper
|
||||
NS_IMPL_CYCLE_COLLECTION_WITH_JS_MEMBERS(UnderlyingSinkStartCallbackHelper,
|
||||
(mCallback), (mUnderlyingSink))
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(UnderlyingSinkStartCallbackHelper)
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(UnderlyingSinkStartCallbackHelper)
|
||||
tmp->mUnderlyingSink = nullptr;
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(UnderlyingSinkStartCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(UnderlyingSinkStartCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mUnderlyingSink)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTING_ADDREF(UnderlyingSinkStartCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTING_RELEASE(UnderlyingSinkStartCallbackHelper)
|
||||
|
@ -30,8 +42,20 @@ void UnderlyingSinkStartCallbackHelper::StartCallback(
|
|||
}
|
||||
|
||||
// UnderlyingSinkWriteCallbackHelper
|
||||
NS_IMPL_CYCLE_COLLECTION_WITH_JS_MEMBERS(UnderlyingSinkWriteCallbackHelper,
|
||||
(mCallback), (mUnderlyingSink))
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(UnderlyingSinkWriteCallbackHelper)
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(UnderlyingSinkWriteCallbackHelper)
|
||||
tmp->mUnderlyingSink = nullptr;
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(UnderlyingSinkWriteCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(UnderlyingSinkWriteCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mUnderlyingSink)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTING_ADDREF(UnderlyingSinkWriteCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTING_RELEASE(UnderlyingSinkWriteCallbackHelper)
|
||||
|
@ -52,8 +76,20 @@ already_AddRefed<Promise> UnderlyingSinkWriteCallbackHelper::WriteCallback(
|
|||
}
|
||||
|
||||
// UnderlyingSinkCloseCallbackHelper
|
||||
NS_IMPL_CYCLE_COLLECTION_WITH_JS_MEMBERS(UnderlyingSinkCloseCallbackHelper,
|
||||
(mCallback), (mUnderlyingSink))
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(UnderlyingSinkCloseCallbackHelper)
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(UnderlyingSinkCloseCallbackHelper)
|
||||
tmp->mUnderlyingSink = nullptr;
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(UnderlyingSinkCloseCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(UnderlyingSinkCloseCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mUnderlyingSink)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTING_ADDREF(UnderlyingSinkCloseCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTING_RELEASE(UnderlyingSinkCloseCallbackHelper)
|
||||
|
@ -73,8 +109,20 @@ already_AddRefed<Promise> UnderlyingSinkCloseCallbackHelper::CloseCallback(
|
|||
}
|
||||
|
||||
// UnderlyingSinkAbortCallbackHelper
|
||||
NS_IMPL_CYCLE_COLLECTION_WITH_JS_MEMBERS(UnderlyingSinkAbortCallbackHelper,
|
||||
(mCallback), (mUnderlyingSink))
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(UnderlyingSinkAbortCallbackHelper)
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(UnderlyingSinkAbortCallbackHelper)
|
||||
tmp->mUnderlyingSink = nullptr;
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(UnderlyingSinkAbortCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(UnderlyingSinkAbortCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mUnderlyingSink)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTING_ADDREF(UnderlyingSinkAbortCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTING_RELEASE(UnderlyingSinkAbortCallbackHelper)
|
||||
|
|
|
@ -12,8 +12,20 @@
|
|||
namespace mozilla::dom {
|
||||
|
||||
// UnderlyingSourceStartCallbackHelper
|
||||
NS_IMPL_CYCLE_COLLECTION_WITH_JS_MEMBERS(UnderlyingSourceStartCallbackHelper,
|
||||
(mCallback), (mThisObj))
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(UnderlyingSourceStartCallbackHelper)
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(UnderlyingSourceStartCallbackHelper)
|
||||
tmp->mThisObj.set(nullptr);
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(UnderlyingSourceStartCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(UnderlyingSourceStartCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mThisObj)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTING_ADDREF(UnderlyingSourceStartCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTING_RELEASE(UnderlyingSourceStartCallbackHelper)
|
||||
|
@ -34,9 +46,23 @@ NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(UnderlyingSourcePullCallbackHelper)
|
|||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
// IDLUnderlyingSourcePullCallbackHelper
|
||||
NS_IMPL_CYCLE_COLLECTION_INHERITED_WITH_JS_MEMBERS(
|
||||
IDLUnderlyingSourcePullCallbackHelper, UnderlyingSourcePullCallbackHelper,
|
||||
(mCallback), (mThisObj))
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(IDLUnderlyingSourcePullCallbackHelper)
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(
|
||||
IDLUnderlyingSourcePullCallbackHelper, UnderlyingSourcePullCallbackHelper)
|
||||
tmp->mThisObj.set(nullptr);
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(
|
||||
IDLUnderlyingSourcePullCallbackHelper, UnderlyingSourcePullCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(
|
||||
IDLUnderlyingSourcePullCallbackHelper, UnderlyingSourcePullCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mThisObj)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
NS_IMPL_ADDREF_INHERITED(IDLUnderlyingSourcePullCallbackHelper,
|
||||
UnderlyingSourcePullCallbackHelper)
|
||||
|
@ -71,9 +97,26 @@ NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(UnderlyingSourceCancelCallbackHelper)
|
|||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
// IDLUnderlyingSourceCancelCallbackHelper
|
||||
NS_IMPL_CYCLE_COLLECTION_INHERITED_WITH_JS_MEMBERS(
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(IDLUnderlyingSourceCancelCallbackHelper)
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(
|
||||
IDLUnderlyingSourceCancelCallbackHelper,
|
||||
UnderlyingSourceCancelCallbackHelper, (mCallback), (mThisObj))
|
||||
UnderlyingSourceCancelCallbackHelper)
|
||||
tmp->mThisObj.set(nullptr);
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(
|
||||
IDLUnderlyingSourceCancelCallbackHelper,
|
||||
UnderlyingSourceCancelCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mCallback)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(
|
||||
IDLUnderlyingSourceCancelCallbackHelper,
|
||||
UnderlyingSourceCancelCallbackHelper)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mThisObj)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
NS_IMPL_ADDREF_INHERITED(IDLUnderlyingSourceCancelCallbackHelper,
|
||||
UnderlyingSourceCancelCallbackHelper)
|
||||
|
|
|
@ -35,12 +35,27 @@
|
|||
|
||||
namespace mozilla::dom {
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_WITH_JS_MEMBERS(
|
||||
WritableStream,
|
||||
(mGlobal, mCloseRequest, mController, mInFlightWriteRequest,
|
||||
mInFlightCloseRequest, mPendingAbortRequestPromise, mWriter,
|
||||
mWriteRequests),
|
||||
(mPendingAbortRequestReason, mStoredError))
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(WritableStream)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(WritableStream)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(mGlobal, mCloseRequest, mController,
|
||||
mInFlightWriteRequest, mInFlightCloseRequest,
|
||||
mPendingAbortRequestPromise, mWriter,
|
||||
mWriteRequests)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER
|
||||
tmp->mPendingAbortRequestReason.setNull();
|
||||
tmp->mStoredError.setNull();
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(WritableStream)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(
|
||||
mGlobal, mCloseRequest, mController, mInFlightWriteRequest,
|
||||
mInFlightCloseRequest, mWriter, mWriteRequests)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(WritableStream)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mPendingAbortRequestReason)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mStoredError)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTING_ADDREF(WritableStream)
|
||||
NS_IMPL_CYCLE_COLLECTING_RELEASE(WritableStream)
|
||||
|
|
|
@ -1039,53 +1039,4 @@ inline bool LowWordEquals(const nsID& aID, const nsID& aOther) {
|
|||
return (((uint32_t*)&aID.m0)[3] == ((uint32_t*)&aOther.m0)[3]);
|
||||
}
|
||||
|
||||
// Template magic to modify JS::Heap without including relevant headers, to
|
||||
// prevent excessive header dependency.
|
||||
template <typename T>
|
||||
inline void ImplCycleCollectionUnlink(JS::Heap<T>& aField) {
|
||||
aField.setNull();
|
||||
}
|
||||
template <typename T>
|
||||
inline void ImplCycleCollectionUnlink(JS::Heap<T*>& aField) {
|
||||
aField = nullptr;
|
||||
}
|
||||
|
||||
#define NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBERS(...) \
|
||||
MOZ_FOR_EACH(NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK, (), \
|
||||
(__VA_ARGS__))
|
||||
|
||||
#define NS_IMPL_CYCLE_COLLECTION_WITH_JS_MEMBERS(class_, native_members_, \
|
||||
js_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(class_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(class_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK( \
|
||||
MOZ_FOR_EACH_EXPAND_HELPER native_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(MOZ_FOR_EACH_EXPAND_HELPER js_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(class_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE( \
|
||||
MOZ_FOR_EACH_EXPAND_HELPER native_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(class_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBERS( \
|
||||
MOZ_FOR_EACH_EXPAND_HELPER js_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
#define NS_IMPL_CYCLE_COLLECTION_INHERITED_WITH_JS_MEMBERS( \
|
||||
class_, _base, native_members_, js_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(class_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(class_, _base) \
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK( \
|
||||
MOZ_FOR_EACH_EXPAND_HELPER native_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK(MOZ_FOR_EACH_EXPAND_HELPER js_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(class_, _base) \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE( \
|
||||
MOZ_FOR_EACH_EXPAND_HELPER native_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(class_, _base) \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBERS( \
|
||||
MOZ_FOR_EACH_EXPAND_HELPER js_members_) \
|
||||
NS_IMPL_CYCLE_COLLECTION_TRACE_END
|
||||
|
||||
#endif // nsCycleCollectionParticipant_h__
|
||||
|
|
Загрузка…
Ссылка в новой задаче