зеркало из https://github.com/mozilla/gecko-dev.git
Merge m-c to inbound
This commit is contained in:
Коммит
f1205fa436
|
@ -120,6 +120,16 @@ this.FxAccountsMgmtService = {
|
|||
}
|
||||
).then(null, Components.utils.reportError);
|
||||
break;
|
||||
case "resendVerificationEmail":
|
||||
FxAccountsManager.resendVerificationEmail().then(
|
||||
() => {
|
||||
self._onFulfill(msg.id);
|
||||
},
|
||||
reason => {
|
||||
self._onReject(msg.id, reason);
|
||||
}
|
||||
).then(null, Components.utils.reportError);
|
||||
break;
|
||||
case "signIn":
|
||||
case "signUp":
|
||||
case "refreshAuthentication":
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="fake-dalvik" path="dalvik" remote="b2g" revision="ca1f327d5acc198bb4be62fa51db2c039032c9ce"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="4f352142a54f7f7ae2c460aad9049eda4b0edb14"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="15ac34804eb8b3c9b2582d7cf754c57e23182df6"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="f313e6d3aaaefe8c82eaed15912a09b120fb7260"/>
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="827214fcf38d6569aeb5c6d6f31cb296d1f09272"/>
|
||||
<project name="platform_hardware_ril" path="hardware/ril" remote="b2g" revision="ca283b9db2b151d465cfd2e19346cf58fe89e413"/>
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
</project>
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="827214fcf38d6569aeb5c6d6f31cb296d1f09272"/>
|
||||
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="4f352142a54f7f7ae2c460aad9049eda4b0edb14"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="15ac34804eb8b3c9b2582d7cf754c57e23182df6"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="f313e6d3aaaefe8c82eaed15912a09b120fb7260"/>
|
||||
<project name="moztt" path="external/moztt" remote="b2g" revision="ce95d372e6d285725b96490afdaaf489ad8f9ca9"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="3691614d0045f7968addce45d4140fb360c3ceaf"/>
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
<project name="platform_build" path="build" remote="b2g" revision="65fba428f8d76336b33ddd9e15900357953600ba">
|
||||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="4f352142a54f7f7ae2c460aad9049eda4b0edb14"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="15ac34804eb8b3c9b2582d7cf754c57e23182df6"/>
|
||||
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="f313e6d3aaaefe8c82eaed15912a09b120fb7260"/>
|
||||
<project name="moztt" path="external/moztt" remote="b2g" revision="ce95d372e6d285725b96490afdaaf489ad8f9ca9"/>
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="fake-dalvik" path="dalvik" remote="b2g" revision="ca1f327d5acc198bb4be62fa51db2c039032c9ce"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="4f352142a54f7f7ae2c460aad9049eda4b0edb14"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="15ac34804eb8b3c9b2582d7cf754c57e23182df6"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="f313e6d3aaaefe8c82eaed15912a09b120fb7260"/>
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="827214fcf38d6569aeb5c6d6f31cb296d1f09272"/>
|
||||
<project name="platform_hardware_ril" path="hardware/ril" remote="b2g" revision="ca283b9db2b151d465cfd2e19346cf58fe89e413"/>
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="827214fcf38d6569aeb5c6d6f31cb296d1f09272"/>
|
||||
<project name="librecovery" path="librecovery" remote="b2g" revision="1f6a1fe07f81c5bc5e1d079c9b60f7f78ca2bf4f"/>
|
||||
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="4f352142a54f7f7ae2c460aad9049eda4b0edb14"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="15ac34804eb8b3c9b2582d7cf754c57e23182df6"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="f313e6d3aaaefe8c82eaed15912a09b120fb7260"/>
|
||||
<project name="moztt" path="external/moztt" remote="b2g" revision="ce95d372e6d285725b96490afdaaf489ad8f9ca9"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="3691614d0045f7968addce45d4140fb360c3ceaf"/>
|
||||
|
@ -119,7 +119,7 @@
|
|||
<!-- Flame specific things -->
|
||||
<project name="device/generic/armv7-a-neon" path="device/generic/armv7-a-neon" revision="e8a318f7690092e639ba88891606f4183e846d3f"/>
|
||||
<project name="device/qcom/common" path="device/qcom/common" revision="234ed34543345f58c0d4dcb1aa012de68802b9dc"/>
|
||||
<project name="device-flame" path="device/t2m/flame" remote="b2g" revision="2a3f4c782daad9740f1b78766b636e0e00a0ff30"/>
|
||||
<project name="device-flame" path="device/t2m/flame" remote="b2g" revision="ecc08b2f0efea93c778e3525553bcd4bd5f2cf49"/>
|
||||
<project name="kernel/msm" path="kernel" revision="1f47f3a180ed8b070f3cf3c4d11ff2523cca6c8a"/>
|
||||
<project name="platform/bootable/recovery" path="bootable/recovery" revision="f2914eacee9120680a41463708bb6ee8291749fc"/>
|
||||
<project name="platform/external/bluetooth/bluedroid" path="external/bluetooth/bluedroid" revision="fa892235a9bd8983f8b591129fc1a9398f64e514"/>
|
||||
|
|
|
@ -4,6 +4,6 @@
|
|||
"remote": "",
|
||||
"branch": ""
|
||||
},
|
||||
"revision": "18441d7d35b6a96732575fb5c28cedfed8269fb2",
|
||||
"revision": "5476e49adf00cafde6cb68e876f0514dac4b993d",
|
||||
"repo_path": "/integration/gaia-central"
|
||||
}
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="fake-dalvik" path="dalvik" remote="b2g" revision="ca1f327d5acc198bb4be62fa51db2c039032c9ce"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="4f352142a54f7f7ae2c460aad9049eda4b0edb14"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="15ac34804eb8b3c9b2582d7cf754c57e23182df6"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="f313e6d3aaaefe8c82eaed15912a09b120fb7260"/>
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="827214fcf38d6569aeb5c6d6f31cb296d1f09272"/>
|
||||
<project name="librecovery" path="librecovery" remote="b2g" revision="1f6a1fe07f81c5bc5e1d079c9b60f7f78ca2bf4f"/>
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="fake-dalvik" path="dalvik" remote="b2g" revision="ca1f327d5acc198bb4be62fa51db2c039032c9ce"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="4f352142a54f7f7ae2c460aad9049eda4b0edb14"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="15ac34804eb8b3c9b2582d7cf754c57e23182df6"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="f313e6d3aaaefe8c82eaed15912a09b120fb7260"/>
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="827214fcf38d6569aeb5c6d6f31cb296d1f09272"/>
|
||||
<project name="librecovery" path="librecovery" remote="b2g" revision="1f6a1fe07f81c5bc5e1d079c9b60f7f78ca2bf4f"/>
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="fake-dalvik" path="dalvik" remote="b2g" revision="ca1f327d5acc198bb4be62fa51db2c039032c9ce"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="4f352142a54f7f7ae2c460aad9049eda4b0edb14"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="15ac34804eb8b3c9b2582d7cf754c57e23182df6"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="f313e6d3aaaefe8c82eaed15912a09b120fb7260"/>
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="827214fcf38d6569aeb5c6d6f31cb296d1f09272"/>
|
||||
<project name="librecovery" path="librecovery" remote="b2g" revision="1f6a1fe07f81c5bc5e1d079c9b60f7f78ca2bf4f"/>
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="fake-dalvik" path="dalvik" remote="b2g" revision="ca1f327d5acc198bb4be62fa51db2c039032c9ce"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="4f352142a54f7f7ae2c460aad9049eda4b0edb14"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="15ac34804eb8b3c9b2582d7cf754c57e23182df6"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="f313e6d3aaaefe8c82eaed15912a09b120fb7260"/>
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="827214fcf38d6569aeb5c6d6f31cb296d1f09272"/>
|
||||
<project name="librecovery" path="librecovery" remote="b2g" revision="1f6a1fe07f81c5bc5e1d079c9b60f7f78ca2bf4f"/>
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
</project>
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="827214fcf38d6569aeb5c6d6f31cb296d1f09272"/>
|
||||
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="4f352142a54f7f7ae2c460aad9049eda4b0edb14"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="15ac34804eb8b3c9b2582d7cf754c57e23182df6"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="f313e6d3aaaefe8c82eaed15912a09b120fb7260"/>
|
||||
<project name="moztt" path="external/moztt" remote="b2g" revision="ce95d372e6d285725b96490afdaaf489ad8f9ca9"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="3691614d0045f7968addce45d4140fb360c3ceaf"/>
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="fake-dalvik" path="dalvik" remote="b2g" revision="ca1f327d5acc198bb4be62fa51db2c039032c9ce"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="4f352142a54f7f7ae2c460aad9049eda4b0edb14"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="15ac34804eb8b3c9b2582d7cf754c57e23182df6"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="f313e6d3aaaefe8c82eaed15912a09b120fb7260"/>
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="827214fcf38d6569aeb5c6d6f31cb296d1f09272"/>
|
||||
<project name="librecovery" path="librecovery" remote="b2g" revision="1f6a1fe07f81c5bc5e1d079c9b60f7f78ca2bf4f"/>
|
||||
|
|
|
@ -808,7 +808,6 @@
|
|||
list-style-image: url("chrome://browser/skin/devtools/vview-edit.png");
|
||||
-moz-image-region: rect(0,16px,16px,0);
|
||||
cursor: pointer;
|
||||
padding-left: 2px;
|
||||
}
|
||||
|
||||
.variables-view-edit:hover {
|
||||
|
|
|
@ -250,17 +250,6 @@ class B2GRemoteAutomation(Automation):
|
|||
if 'b2g' not in session:
|
||||
raise Exception("bad session value %s returned by start_session" % session)
|
||||
|
||||
if self._is_emulator:
|
||||
# Disable offline status management (bug 777145), otherwise the network
|
||||
# will be 'offline' when the mochitests start. Presumably, the network
|
||||
# won't be offline on a real device, so we only do this for emulators.
|
||||
self.marionette.set_context(self.marionette.CONTEXT_CHROME)
|
||||
self.marionette.execute_script("""
|
||||
Components.utils.import("resource://gre/modules/Services.jsm");
|
||||
Services.io.manageOfflineStatus = false;
|
||||
Services.io.offline = false;
|
||||
""")
|
||||
|
||||
if self.context_chrome:
|
||||
self.marionette.set_context(self.marionette.CONTEXT_CHROME)
|
||||
else:
|
||||
|
|
|
@ -3,7 +3,8 @@
|
|||
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#include "mozilla/dom/telephony/TelephonyChild.h"
|
||||
#include "TelephonyChild.h"
|
||||
#include "TelephonyIPCProvider.h"
|
||||
|
||||
USING_TELEPHONY_NAMESPACE
|
||||
|
||||
|
@ -11,16 +12,23 @@ USING_TELEPHONY_NAMESPACE
|
|||
* TelephonyChild
|
||||
******************************************************************************/
|
||||
|
||||
TelephonyChild::TelephonyChild(nsITelephonyListener* aListener)
|
||||
: mListener(aListener)
|
||||
TelephonyChild::TelephonyChild(TelephonyIPCProvider* aProvider)
|
||||
: mProvider(aProvider)
|
||||
{
|
||||
MOZ_ASSERT(aProvider);
|
||||
}
|
||||
|
||||
TelephonyChild::~TelephonyChild()
|
||||
{
|
||||
MOZ_ASSERT(aListener);
|
||||
}
|
||||
|
||||
void
|
||||
TelephonyChild::ActorDestroy(ActorDestroyReason aWhy)
|
||||
{
|
||||
mListener = nullptr;
|
||||
if (mProvider) {
|
||||
mProvider->NoteActorDestroyed();
|
||||
mProvider = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
PTelephonyRequestChild*
|
||||
|
@ -41,9 +49,9 @@ TelephonyChild::RecvNotifyCallError(const uint32_t& aClientId,
|
|||
const int32_t& aCallIndex,
|
||||
const nsString& aError)
|
||||
{
|
||||
MOZ_ASSERT(mListener);
|
||||
MOZ_ASSERT(mProvider);
|
||||
|
||||
mListener->NotifyError(aClientId, aCallIndex, aError);
|
||||
mProvider->NotifyError(aClientId, aCallIndex, aError);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -51,9 +59,9 @@ bool
|
|||
TelephonyChild::RecvNotifyCallStateChanged(const uint32_t& aClientId,
|
||||
const IPCCallStateData& aData)
|
||||
{
|
||||
MOZ_ASSERT(mListener);
|
||||
MOZ_ASSERT(mProvider);
|
||||
|
||||
mListener->CallStateChanged(aClientId,
|
||||
mProvider->CallStateChanged(aClientId,
|
||||
aData.callIndex(),
|
||||
aData.callState(),
|
||||
aData.number(),
|
||||
|
@ -70,18 +78,18 @@ bool
|
|||
TelephonyChild::RecvNotifyCdmaCallWaiting(const uint32_t& aClientId,
|
||||
const nsString& aNumber)
|
||||
{
|
||||
MOZ_ASSERT(mListener);
|
||||
MOZ_ASSERT(mProvider);
|
||||
|
||||
mListener->NotifyCdmaCallWaiting(aClientId, aNumber);
|
||||
mProvider->NotifyCdmaCallWaiting(aClientId, aNumber);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool
|
||||
TelephonyChild::RecvNotifyConferenceCallStateChanged(const uint16_t& aCallState)
|
||||
{
|
||||
MOZ_ASSERT(mListener);
|
||||
MOZ_ASSERT(mProvider);
|
||||
|
||||
mListener->ConferenceCallStateChanged(aCallState);
|
||||
mProvider->ConferenceCallStateChanged(aCallState);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -89,9 +97,9 @@ bool
|
|||
TelephonyChild::RecvNotifyConferenceError(const nsString& aName,
|
||||
const nsString& aMessage)
|
||||
{
|
||||
MOZ_ASSERT(mListener);
|
||||
MOZ_ASSERT(mProvider);
|
||||
|
||||
mListener->NotifyConferenceError(aName, aMessage);
|
||||
mProvider->NotifyConferenceError(aName, aMessage);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -100,9 +108,9 @@ TelephonyChild::RecvNotifySupplementaryService(const uint32_t& aClientId,
|
|||
const int32_t& aCallIndex,
|
||||
const uint16_t& aNotification)
|
||||
{
|
||||
MOZ_ASSERT(mListener);
|
||||
MOZ_ASSERT(mProvider);
|
||||
|
||||
mListener->SupplementaryServiceNotification(aClientId, aCallIndex,
|
||||
mProvider->SupplementaryServiceNotification(aClientId, aCallIndex,
|
||||
aNotification);
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -13,13 +13,15 @@
|
|||
|
||||
BEGIN_TELEPHONY_NAMESPACE
|
||||
|
||||
class TelephonyIPCProvider;
|
||||
|
||||
class TelephonyChild : public PTelephonyChild
|
||||
{
|
||||
public:
|
||||
TelephonyChild(nsITelephonyListener* aListener);
|
||||
TelephonyChild(TelephonyIPCProvider* aProvider);
|
||||
|
||||
protected:
|
||||
virtual ~TelephonyChild() {}
|
||||
virtual ~TelephonyChild();
|
||||
|
||||
virtual void
|
||||
ActorDestroy(ActorDestroyReason aWhy) MOZ_OVERRIDE;
|
||||
|
@ -55,7 +57,7 @@ protected:
|
|||
const uint16_t& aNotification) MOZ_OVERRIDE;
|
||||
|
||||
private:
|
||||
nsCOMPtr<nsITelephonyListener> mListener;
|
||||
nsRefPtr<TelephonyIPCProvider> mProvider;
|
||||
};
|
||||
|
||||
class TelephonyRequestChild : public PTelephonyRequestChild
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#include "ipc/TelephonyIPCProvider.h"
|
||||
#include "TelephonyIPCProvider.h"
|
||||
|
||||
#include "mozilla/dom/ContentChild.h"
|
||||
#include "mozilla/dom/telephony/TelephonyChild.h"
|
||||
|
@ -53,7 +53,17 @@ TelephonyIPCProvider::TelephonyIPCProvider()
|
|||
|
||||
TelephonyIPCProvider::~TelephonyIPCProvider()
|
||||
{
|
||||
mPTelephonyChild->Send__delete__(mPTelephonyChild);
|
||||
if (mPTelephonyChild) {
|
||||
mPTelephonyChild->Send__delete__(mPTelephonyChild);
|
||||
mPTelephonyChild = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
TelephonyIPCProvider::NoteActorDestroyed()
|
||||
{
|
||||
MOZ_ASSERT(mPTelephonyChild);
|
||||
|
||||
mPTelephonyChild = nullptr;
|
||||
}
|
||||
|
||||
|
@ -94,6 +104,11 @@ TelephonyIPCProvider::RegisterListener(nsITelephonyListener *aListener)
|
|||
{
|
||||
MOZ_ASSERT(!mListeners.Contains(aListener));
|
||||
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
// nsTArray doesn't fail.
|
||||
mListeners.AppendElement(aListener);
|
||||
|
||||
|
@ -108,6 +123,11 @@ TelephonyIPCProvider::UnregisterListener(nsITelephonyListener *aListener)
|
|||
{
|
||||
MOZ_ASSERT(mListeners.Contains(aListener));
|
||||
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
// We always have the element here, so it can't fail.
|
||||
mListeners.RemoveElement(aListener);
|
||||
|
||||
|
@ -122,6 +142,11 @@ TelephonyIPCProvider::SendRequest(nsITelephonyListener *aListener,
|
|||
nsITelephonyCallback *aCallback,
|
||||
const IPCTelephonyRequest& aRequest)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
// Life time of newly allocated TelephonyRequestChild instance is managed by
|
||||
// IPDL itself.
|
||||
TelephonyRequestChild* actor = new TelephonyRequestChild(aListener, aCallback);
|
||||
|
@ -146,6 +171,11 @@ TelephonyIPCProvider::Dial(uint32_t aClientId, const nsAString& aNumber,
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::HangUp(uint32_t aClientId, uint32_t aCallIndex)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendHangUpCall(aClientId, aCallIndex);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -153,6 +183,11 @@ TelephonyIPCProvider::HangUp(uint32_t aClientId, uint32_t aCallIndex)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::AnswerCall(uint32_t aClientId, uint32_t aCallIndex)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendAnswerCall(aClientId, aCallIndex);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -160,6 +195,11 @@ TelephonyIPCProvider::AnswerCall(uint32_t aClientId, uint32_t aCallIndex)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::RejectCall(uint32_t aClientId, uint32_t aCallIndex)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendRejectCall(aClientId, aCallIndex);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -167,6 +207,11 @@ TelephonyIPCProvider::RejectCall(uint32_t aClientId, uint32_t aCallIndex)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::HoldCall(uint32_t aClientId, uint32_t aCallIndex)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendHoldCall(aClientId, aCallIndex);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -174,6 +219,11 @@ TelephonyIPCProvider::HoldCall(uint32_t aClientId, uint32_t aCallIndex)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::ResumeCall(uint32_t aClientId, uint32_t aCallIndex)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendResumeCall(aClientId, aCallIndex);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -181,6 +231,11 @@ TelephonyIPCProvider::ResumeCall(uint32_t aClientId, uint32_t aCallIndex)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::ConferenceCall(uint32_t aClientId)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendConferenceCall(aClientId);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -188,6 +243,11 @@ TelephonyIPCProvider::ConferenceCall(uint32_t aClientId)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::SeparateCall(uint32_t aClientId, uint32_t aCallIndex)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendSeparateCall(aClientId, aCallIndex);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -195,6 +255,11 @@ TelephonyIPCProvider::SeparateCall(uint32_t aClientId, uint32_t aCallIndex)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::HoldConference(uint32_t aClientId)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendHoldConference(aClientId);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -202,6 +267,11 @@ TelephonyIPCProvider::HoldConference(uint32_t aClientId)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::ResumeConference(uint32_t aClientId)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendResumeConference(aClientId);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -209,6 +279,11 @@ TelephonyIPCProvider::ResumeConference(uint32_t aClientId)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::StartTone(uint32_t aClientId, const nsAString& aDtmfChar)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendStartTone(aClientId, nsString(aDtmfChar));
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -216,6 +291,11 @@ TelephonyIPCProvider::StartTone(uint32_t aClientId, const nsAString& aDtmfChar)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::StopTone(uint32_t aClientId)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendStopTone(aClientId);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -223,6 +303,11 @@ TelephonyIPCProvider::StopTone(uint32_t aClientId)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::GetMicrophoneMuted(bool* aMuted)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendGetMicrophoneMuted(aMuted);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -230,6 +315,11 @@ TelephonyIPCProvider::GetMicrophoneMuted(bool* aMuted)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::SetMicrophoneMuted(bool aMuted)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendSetMicrophoneMuted(aMuted);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -237,6 +327,11 @@ TelephonyIPCProvider::SetMicrophoneMuted(bool aMuted)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::GetSpeakerEnabled(bool* aEnabled)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendGetSpeakerEnabled(aEnabled);
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -244,6 +339,11 @@ TelephonyIPCProvider::GetSpeakerEnabled(bool* aEnabled)
|
|||
NS_IMETHODIMP
|
||||
TelephonyIPCProvider::SetSpeakerEnabled(bool aEnabled)
|
||||
{
|
||||
if (!mPTelephonyChild) {
|
||||
NS_WARNING("TelephonyProvider used after shutdown has begun!");
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
mPTelephonyChild->SendSetSpeakerEnabled(aEnabled);
|
||||
return NS_OK;
|
||||
}
|
||||
|
|
|
@ -28,10 +28,11 @@ public:
|
|||
|
||||
TelephonyIPCProvider();
|
||||
|
||||
protected:
|
||||
virtual ~TelephonyIPCProvider();
|
||||
void NoteActorDestroyed();
|
||||
|
||||
private:
|
||||
~TelephonyIPCProvider();
|
||||
|
||||
nsTArray<nsCOMPtr<nsITelephonyListener> > mListeners;
|
||||
PTelephonyChild* mPTelephonyChild;
|
||||
uint32_t mDefaultServiceId;
|
||||
|
|
|
@ -47,6 +47,8 @@ class TestActorPunningPunnedParent :
|
|||
public:
|
||||
TestActorPunningPunnedParent() {}
|
||||
virtual ~TestActorPunningPunnedParent() {}
|
||||
protected:
|
||||
virtual void ActorDestroy(ActorDestroyReason why) MOZ_OVERRIDE {}
|
||||
};
|
||||
|
||||
class TestActorPunningSubParent :
|
||||
|
@ -55,6 +57,8 @@ class TestActorPunningSubParent :
|
|||
public:
|
||||
TestActorPunningSubParent() {}
|
||||
virtual ~TestActorPunningSubParent() {}
|
||||
protected:
|
||||
virtual void ActorDestroy(ActorDestroyReason why) MOZ_OVERRIDE {}
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -51,6 +51,7 @@ public:
|
|||
virtual ~TestBadActorSubParent() { }
|
||||
|
||||
protected:
|
||||
virtual void ActorDestroy(ActorDestroyReason why) MOZ_OVERRIDE {}
|
||||
virtual bool RecvPing();
|
||||
};
|
||||
|
||||
|
|
|
@ -80,8 +80,8 @@ public:
|
|||
virtual ~TestDescSubParent() { }
|
||||
|
||||
protected:
|
||||
virtual void ActorDestroy(ActorDestroyReason why) MOZ_OVERRIDE {}
|
||||
virtual PTestDescSubsubParent* AllocPTestDescSubsubParent() MOZ_OVERRIDE;
|
||||
|
||||
virtual bool DeallocPTestDescSubsubParent(PTestDescSubsubParent* actor) MOZ_OVERRIDE;
|
||||
};
|
||||
|
||||
|
@ -108,6 +108,9 @@ class TestDescSubsubParent :
|
|||
public:
|
||||
TestDescSubsubParent() { }
|
||||
virtual ~TestDescSubsubParent() { }
|
||||
|
||||
protected:
|
||||
virtual void ActorDestroy(ActorDestroyReason why) MOZ_OVERRIDE {}
|
||||
};
|
||||
|
||||
class TestDescSubsubChild :
|
||||
|
|
|
@ -18,6 +18,9 @@ class TestHandleParent :
|
|||
public:
|
||||
TestHandleParent() { }
|
||||
virtual ~TestHandleParent() { }
|
||||
|
||||
protected:
|
||||
virtual void ActorDestroy(ActorDestroyReason why) MOZ_OVERRIDE {}
|
||||
};
|
||||
|
||||
class TestJSONParent :
|
||||
|
|
|
@ -72,6 +72,7 @@ public:
|
|||
virtual ~TestManyChildAllocsSubParent() { }
|
||||
|
||||
protected:
|
||||
virtual void ActorDestroy(ActorDestroyReason why) MOZ_OVERRIDE {}
|
||||
virtual bool RecvHello() MOZ_OVERRIDE { return true; }
|
||||
};
|
||||
|
||||
|
|
|
@ -25,6 +25,9 @@ class TestMultiMgrsBottomParent :
|
|||
public:
|
||||
TestMultiMgrsBottomParent() { }
|
||||
virtual ~TestMultiMgrsBottomParent() { }
|
||||
|
||||
protected:
|
||||
virtual void ActorDestroy(ActorDestroyReason why) MOZ_OVERRIDE {}
|
||||
};
|
||||
|
||||
class TestMultiMgrsLeftParent :
|
||||
|
@ -40,6 +43,8 @@ public:
|
|||
}
|
||||
|
||||
protected:
|
||||
virtual void ActorDestroy(ActorDestroyReason why) MOZ_OVERRIDE {}
|
||||
|
||||
virtual PTestMultiMgrsBottomParent* AllocPTestMultiMgrsBottomParent() MOZ_OVERRIDE
|
||||
{
|
||||
return new TestMultiMgrsBottomParent();
|
||||
|
@ -65,6 +70,8 @@ public:
|
|||
}
|
||||
|
||||
protected:
|
||||
virtual void ActorDestroy(ActorDestroyReason why) MOZ_OVERRIDE {}
|
||||
|
||||
virtual PTestMultiMgrsBottomParent* AllocPTestMultiMgrsBottomParent() MOZ_OVERRIDE
|
||||
{
|
||||
return new TestMultiMgrsBottomParent();
|
||||
|
|
|
@ -4125,4 +4125,4 @@ pref("beacon.enabled", true);
|
|||
|
||||
// Camera prefs
|
||||
pref("camera.control.autofocus_moving_callback.enabled", false);
|
||||
pref("camera.control.face_detection.enabled", false);
|
||||
pref("camera.control.face_detection.enabled", true);
|
||||
|
|
|
@ -250,6 +250,17 @@ this.FxAccountsManager = {
|
|||
return this._signOut();
|
||||
},
|
||||
|
||||
resendVerificationEmail: function() {
|
||||
return this._fxAccounts.resendVerificationEmail().then(
|
||||
(result) => {
|
||||
return result;
|
||||
},
|
||||
(error) => {
|
||||
return this._error(ERROR_SERVER_ERROR, error);
|
||||
}
|
||||
);
|
||||
},
|
||||
|
||||
getAccount: function() {
|
||||
// We check first if we have session details cached.
|
||||
if (this._activeSession) {
|
||||
|
|
|
@ -122,6 +122,15 @@ FxAccountsManager._fxAccounts = {
|
|||
return deferred.promise;
|
||||
},
|
||||
|
||||
resendVerificationEmail: function() {
|
||||
return this.getSignedInUser().then(data => {
|
||||
if (data) {
|
||||
return Promise.resolve(true);
|
||||
}
|
||||
throw new Error("Cannot resend verification email; no signed-in user");
|
||||
});
|
||||
},
|
||||
|
||||
setSignedInUser: function(user) {
|
||||
this._setSignedInUserCalled = true;
|
||||
let deferred = Promise.defer();
|
||||
|
@ -580,6 +589,33 @@ add_test(function(test_signIn_already_signed_user) {
|
|||
);
|
||||
});
|
||||
|
||||
add_test(function(test_resendVerificationEmail_error_handling) {
|
||||
do_print("= resendVerificationEmail smoke test =");
|
||||
let user = FxAccountsManager._fxAccounts._signedInUser;
|
||||
FxAccountsManager._fxAccounts._signedInUser.verified = false;
|
||||
FxAccountsManager.resendVerificationEmail().then(
|
||||
(success) => {
|
||||
do_check_true(success);
|
||||
},
|
||||
(error) => {
|
||||
do_throw("Unexpected failure");
|
||||
}
|
||||
);
|
||||
// Here we verify that when FxAccounts.resendVerificationEmail
|
||||
// throws an error, we gracefully handle it in the reject() channel.
|
||||
FxAccountsManager._fxAccounts._signedInUser = null;
|
||||
FxAccountsManager.resendVerificationEmail().then(
|
||||
(success) => {
|
||||
do_throw("Unexpected success");
|
||||
},
|
||||
(error) => {
|
||||
do_check_eq(error.error, ERROR_SERVER_ERROR);
|
||||
}
|
||||
);
|
||||
FxAccountsManager._fxAccounts._signedInUser = user;
|
||||
run_next_test();
|
||||
});
|
||||
|
||||
add_test(function(test_verificationStatus_unverified_session_unverified_user) {
|
||||
do_print("= verificationStatus unverified session and user =");
|
||||
FakeFxAccountsClient._verified = false;
|
||||
|
|
|
@ -471,7 +471,7 @@ let Impl = {
|
|||
// sysinfo fields are not always available, get what we can.
|
||||
let sysInfo = Cc["@mozilla.org/system-info;1"].getService(Ci.nsIPropertyBag2);
|
||||
let fields = ["cpucount", "memsize", "arch", "version", "kernel_version",
|
||||
"device", "manufacturer", "hardware",
|
||||
"device", "manufacturer", "hardware", "tablet",
|
||||
"hasMMX", "hasSSE", "hasSSE2", "hasSSE3",
|
||||
"hasSSSE3", "hasSSE4A", "hasSSE4_1", "hasSSE4_2",
|
||||
"hasEDSP", "hasARMv6", "hasARMv7", "hasNEON", "isWow64",
|
||||
|
|
Загрузка…
Ссылка в новой задаче