Bug 832960 - Geolocation and desktop notification should require a manifest entry for apps on Android. r=mfinkle
☠☠ backed out by 8bd708f9171b ☠ ☠
authorMarco Castelluccio <mar.castelluccio@studenti.unina.it>
Wed, 24 Jul 2013 09:03:42 -0400
changeset 152115 fef7cf65b4e7078dd800a48406b3f1c970cd450c
parent 152114 62cea72bee19c13246f67724672a64c44af7480c
child 152116 b26ac05ab0b0d579c008d6d6bd0dcf099ccae81f
push id2859
push userakeybl@mozilla.com
push dateMon, 16 Sep 2013 19:14:59 +0000
treeherdermozilla-beta@87d3c51cd2bf [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersmfinkle
bugs832960
milestone25.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 832960 - Geolocation and desktop notification should require a manifest entry for apps on Android. r=mfinkle
mobile/android/components/ContentPermissionPrompt.js
--- a/mobile/android/components/ContentPermissionPrompt.js
+++ b/mobile/android/components/ContentPermissionPrompt.js
@@ -22,17 +22,17 @@ ContentPermissionPrompt.prototype = {
   QueryInterface: XPCOMUtils.generateQI([Ci.nsIContentPermissionPrompt]),
 
   handleExistingPermission: function handleExistingPermission(request) {
     let result = Services.perms.testExactPermissionFromPrincipal(request.principal, request.type);
     if (result == Ci.nsIPermissionManager.ALLOW_ACTION) {
       request.allow();
       return true;
     }
-    if (result == Ci.nsIPermissionManager.DENY_ACTION) {
+    if (result == Ci.nsIPermissionManager.DENY_ACTION || (result == Ci.nsIPermissionManager.UNKNOWN_ACTION && !!kEntities[request.type])) {
       request.cancel();
       return true;
     }
     return false;
   },
 
   getChromeWindow: function getChromeWindow(aWindow) {
      let chromeWin = aWindow.QueryInterface(Ci.nsIInterfaceRequestor)