Bug 1060179 - Disable GMPService.getNodeID on B2G, as it can't possibly work there. r=bustage

This commit is contained in:
Chris Pearce 2014-10-13 11:53:45 +13:00
parent f19eae78d2
commit 83e8392de6
2 changed files with 15 additions and 0 deletions

View File

@ -177,8 +177,11 @@ GeckoMediaPluginService::Init()
prefs->AddObserver("media.gmp.plugin.crash", this, false);
}
#ifndef MOZ_WIDGET_GONK
// Directory service is main thread only, so cache the profile dir here
// so that we can use it off main thread.
// We only do this on non-B2G, as this fails in multi-process Gecko.
// TODO: Make this work in multi-process Gecko.
nsresult rv = NS_GetSpecialDirectory(NS_APP_USER_PROFILE_50_DIR, getter_AddRefs(mStorageBaseDir));
if (NS_WARN_IF(NS_FAILED(rv))) {
return rv;
@ -193,6 +196,7 @@ GeckoMediaPluginService::Init()
if (NS_WARN_IF(NS_FAILED(rv) && rv != NS_ERROR_FILE_ALREADY_EXISTS)) {
return rv;
}
#endif
// Kick off scanning for plugins
nsCOMPtr<nsIThread> thread;
@ -889,10 +893,14 @@ GeckoMediaPluginService::ReAddOnGMPThread(nsRefPtr<GMPParent>& aOld)
NS_IMETHODIMP
GeckoMediaPluginService::GetStorageDir(nsIFile** aOutFile)
{
#ifndef MOZ_WIDGET_GONK
if (NS_WARN_IF(!mStorageBaseDir)) {
return NS_ERROR_FAILURE;
}
return mStorageBaseDir->Clone(aOutFile);
#else
return NS_ERROR_NOT_IMPLEMENTED;
#endif
}
static nsresult
@ -988,6 +996,11 @@ GeckoMediaPluginService::GetNodeId(const nsAString& aOrigin,
NS_ConvertUTF16toUTF8(aTopLevelOrigin).get(),
(aInPrivateBrowsing ? "PrivateBrowsing" : "NonPrivateBrowsing")));
#ifdef MOZ_WIDGET_GONK
NS_WARNING("GeckoMediaPluginService::GetNodeId Not implemented on B2G");
return NS_ERROR_NOT_IMPLEMENTED;
#endif
nsresult rv;
const uint32_t NodeIdSaltLength = 32;

View File

@ -114,7 +114,9 @@ private:
nsTArray<nsRefPtr<GMPParent>> mAsyncShutdownPlugins; // GMP Thread only.
nsCOMPtr<nsITimer> mAsyncShutdownTimeout; // GMP Thread only.
#ifndef MOZ_WIDGET_GONK
nsCOMPtr<nsIFile> mStorageBaseDir;
#endif
// Hashes of (origin,topLevelOrigin) to the node id for
// non-persistent sessions.