diff --git a/widget/android/jni/GeckoResultUtils.h b/widget/android/jni/GeckoResultUtils.h index eee56d41c394..da103f35eea4 100644 --- a/widget/android/jni/GeckoResultUtils.h +++ b/widget/android/jni/GeckoResultUtils.h @@ -34,7 +34,7 @@ class GeckoResultCallback final OuterCallback outerCallback = [inner{std::move(aInnerCallback)}](mozilla::jni::Object::Param aParam) { ArgType converted = Java2Native(aParam); - inner(converted); + inner(std::move(converted)); }; auto native = MakeUnique(std::move(outerCallback)); Base::AttachNative(java, std::move(native)); diff --git a/xpcom/threads/MozPromise.h b/xpcom/threads/MozPromise.h index aa5fc277e944..dbd05c1b17ff 100644 --- a/xpcom/threads/MozPromise.h +++ b/xpcom/threads/MozPromise.h @@ -1087,9 +1087,11 @@ class MozPromise : public MozPromiseBase { using jni::GeckoResultCallback; RefPtr p = new Private("GeckoResult Glue", false); auto resolve = GeckoResultCallback::CreateAndAttach( - [p](ResolveValueType aArg) { p->Resolve(aArg, __func__); }); + [p](ResolveValueType&& aArg) { + p->Resolve(MaybeMove(aArg), __func__); + }); auto reject = GeckoResultCallback::CreateAndAttach( - [p](RejectValueType aArg) { p->Reject(aArg, __func__); }); + [p](RejectValueType&& aArg) { p->Reject(MaybeMove(aArg), __func__); }); aGeckoResult->NativeThen(resolve, reject); return p; }