Browse Source

More mozilla rel-257 rebases

Ian Neal 4 years ago
parent
commit
b659d78a0c

+ 0 - 463
comm-esr60/mozilla-esr60/patches/1502747-65a1.patch

@@ -1,463 +0,0 @@
-# HG changeset patch
-# User Ehsan Akhgari <ehsan@mozilla.com>
-# Date 1540885735 0
-# Node ID 60129b9fe3f652601b1fdbe0d3bc2786f0ca4105
-# Parent  4e213fe85e6a1847a3c2814c15d64b681a8bda38
-Bug 1502747 - Remove nsIContentPermissionType.access and all of its supporting code r=snorp,baku
-
-This field was originally added for the b2g-only DeviceStorage API,
-and isn't used for anything else right now.
-
-This reverts the remaining parts of bug 1043136 and bug 1043136
-as well as some support code for mobile.
-
-Differential Revision: https://phabricator.services.mozilla.com/D10014
-
-diff --git a/dom/base/nsContentPermissionHelper.cpp b/dom/base/nsContentPermissionHelper.cpp
---- a/dom/base/nsContentPermissionHelper.cpp
-+++ b/dom/base/nsContentPermissionHelper.cpp
-@@ -204,43 +204,34 @@ ContentPermissionRequestParent::IsBeingD
-   // It's unsafe to send out any message now.
-   ContentParent* contentParent = static_cast<ContentParent*>(Manager());
-   return !contentParent->IsAlive();
- }
- 
- NS_IMPL_ISUPPORTS(ContentPermissionType, nsIContentPermissionType)
- 
- ContentPermissionType::ContentPermissionType(const nsACString& aType,
--                                             const nsACString& aAccess,
-                                              const nsTArray<nsString>& aOptions)
- {
-   mType = aType;
--  mAccess = aAccess;
-   mOptions = aOptions;
- }
- 
- ContentPermissionType::~ContentPermissionType()
- {
- }
- 
- NS_IMETHODIMP
- ContentPermissionType::GetType(nsACString& aType)
- {
-   aType = mType;
-   return NS_OK;
- }
- 
- NS_IMETHODIMP
--ContentPermissionType::GetAccess(nsACString& aAccess)
--{
--  aAccess = mAccess;
--  return NS_OK;
--}
--
--NS_IMETHODIMP
- ContentPermissionType::GetOptions(nsIArray** aOptions)
- {
-   NS_ENSURE_ARG_POINTER(aOptions);
- 
-   *aOptions = nullptr;
- 
-   nsresult rv;
-   nsCOMPtr<nsIMutableArray> options =
-@@ -269,35 +260,32 @@ ContentPermissionType::GetOptions(nsIArr
- /* static */ uint32_t
- nsContentPermissionUtils::ConvertPermissionRequestToArray(nsTArray<PermissionRequest>& aSrcArray,
-                                                           nsIMutableArray* aDesArray)
- {
-   uint32_t len = aSrcArray.Length();
-   for (uint32_t i = 0; i < len; i++) {
-     RefPtr<ContentPermissionType> cpt =
-       new ContentPermissionType(aSrcArray[i].type(),
--                                aSrcArray[i].access(),
-                                 aSrcArray[i].options());
-     aDesArray->AppendElement(cpt);
-   }
-   return len;
- }
- 
- /* static */ uint32_t
- nsContentPermissionUtils::ConvertArrayToPermissionRequest(nsIArray* aSrcArray,
-                                                           nsTArray<PermissionRequest>& aDesArray)
- {
-   uint32_t len = 0;
-   aSrcArray->GetLength(&len);
-   for (uint32_t i = 0; i < len; i++) {
-     nsCOMPtr<nsIContentPermissionType> cpt = do_QueryElementAt(aSrcArray, i);
-     nsAutoCString type;
--    nsAutoCString access;
-     cpt->GetType(type);
--    cpt->GetAccess(access);
- 
-     nsCOMPtr<nsIArray> optionArray;
-     cpt->GetOptions(getter_AddRefs(optionArray));
-     uint32_t optionsLength = 0;
-     if (optionArray) {
-       optionArray->GetLength(&optionsLength);
-     }
-     nsTArray<nsString> options;
-@@ -305,17 +293,17 @@ nsContentPermissionUtils::ConvertArrayTo
-       nsCOMPtr<nsISupportsString> isupportsString = do_QueryElementAt(optionArray, j);
-       if (isupportsString) {
-         nsString option;
-         isupportsString->GetData(option);
-         options.AppendElement(option);
-       }
-     }
- 
--    aDesArray.AppendElement(PermissionRequest(type, access, options));
-+    aDesArray.AppendElement(PermissionRequest(type, options));
-   }
-   return len;
- }
- 
- static std::map<PContentPermissionRequestParent*, TabId>&
- ContentPermissionRequestParentMap()
- {
-   MOZ_ASSERT(NS_IsMainThread());
-@@ -328,24 +316,22 @@ ContentPermissionRequestChildMap()
- {
-   MOZ_ASSERT(NS_IsMainThread());
-   static std::map<PContentPermissionRequestChild*, TabId> sPermissionRequestChildMap;
-   return sPermissionRequestChildMap;
- }
- 
- /* static */ nsresult
- nsContentPermissionUtils::CreatePermissionArray(const nsACString& aType,
--                                                const nsACString& aAccess,
-                                                 const nsTArray<nsString>& aOptions,
-                                                 nsIArray** aTypesArray)
- {
-   nsCOMPtr<nsIMutableArray> types = do_CreateInstance(NS_ARRAY_CONTRACTID);
-   RefPtr<ContentPermissionType> permType = new ContentPermissionType(aType,
--                                                                       aAccess,
--                                                                       aOptions);
-+                                                                     aOptions);
-   types->AppendElement(permType);
-   types.forget(aTypesArray);
- 
-   return NS_OK;
- }
- 
- /* static */ PContentPermissionRequestParent*
- nsContentPermissionUtils::CreateContentPermissionRequestParent(const nsTArray<PermissionRequest>& aRequests,
-diff --git a/dom/base/nsContentPermissionHelper.h b/dom/base/nsContentPermissionHelper.h
---- a/dom/base/nsContentPermissionHelper.h
-+++ b/dom/base/nsContentPermissionHelper.h
-@@ -43,41 +43,38 @@ class PContentPermissionRequestParent;
- 
- class ContentPermissionType : public nsIContentPermissionType
- {
- public:
-   NS_DECL_ISUPPORTS
-   NS_DECL_NSICONTENTPERMISSIONTYPE
- 
-   ContentPermissionType(const nsACString& aType,
--                        const nsACString& aAccess,
-                         const nsTArray<nsString>& aOptions);
- 
- protected:
-   virtual ~ContentPermissionType();
- 
-   nsCString mType;
--  nsCString mAccess;
-   nsTArray<nsString> mOptions;
- };
- 
- class nsContentPermissionUtils
- {
- public:
-   static uint32_t
-   ConvertPermissionRequestToArray(nsTArray<PermissionRequest>& aSrcArray,
-                                   nsIMutableArray* aDesArray);
- 
-   static uint32_t
-   ConvertArrayToPermissionRequest(nsIArray* aSrcArray,
-                                   nsTArray<PermissionRequest>& aDesArray);
- 
-   static nsresult
-   CreatePermissionArray(const nsACString& aType,
--                        const nsACString& aAccess,
-                         const nsTArray<nsString>& aOptions,
-                         nsIArray** aTypesArray);
- 
-   static PContentPermissionRequestParent*
-   CreateContentPermissionRequestParent(const nsTArray<PermissionRequest>& aRequests,
-                                        Element* element,
-                                        const IPC::Principal& principal,
-                                        const TabId& aTabId);
-diff --git a/dom/geolocation/nsGeolocation.cpp b/dom/geolocation/nsGeolocation.cpp
---- a/dom/geolocation/nsGeolocation.cpp
-+++ b/dom/geolocation/nsGeolocation.cpp
-@@ -366,17 +366,16 @@ nsGeolocationRequest::GetPrincipal(nsIPr
-   return NS_OK;
- }
- 
- NS_IMETHODIMP
- nsGeolocationRequest::GetTypes(nsIArray** aTypes)
- {
-   nsTArray<nsString> emptyOptions;
-   return nsContentPermissionUtils::CreatePermissionArray(NS_LITERAL_CSTRING("geolocation"),
--                                                         NS_LITERAL_CSTRING("unused"),
-                                                          emptyOptions,
-                                                          aTypes);
- }
- 
- NS_IMETHODIMP
- nsGeolocationRequest::GetWindow(mozIDOMWindow** aRequestingWindow)
- {
-   NS_ENSURE_ARG_POINTER(aRequestingWindow);
-diff --git a/dom/interfaces/base/nsIContentPermissionPrompt.idl b/dom/interfaces/base/nsIContentPermissionPrompt.idl
---- a/dom/interfaces/base/nsIContentPermissionPrompt.idl
-+++ b/dom/interfaces/base/nsIContentPermissionPrompt.idl
-@@ -16,22 +16,16 @@ interface nsIArray;
- interface nsIContentPermissionType : nsISupports {
-   /**
-    *  The type of the permission request, such as
-    *  "geolocation".
-    */
-   readonly attribute ACString type;
- 
-   /**
--   *  The access of the permission request, such as
--   *  "read".
--   */
--  readonly attribute ACString access;
--
--  /**
-    * The array of available options.
-    */
-   readonly attribute nsIArray options; // ["choice1", "choice2"]
- };
- 
- /**
-  *  Interface provides the callback type.
-  */
-diff --git a/dom/ipc/PContentPermission.ipdlh b/dom/ipc/PContentPermission.ipdlh
---- a/dom/ipc/PContentPermission.ipdlh
-+++ b/dom/ipc/PContentPermission.ipdlh
-@@ -2,17 +2,16 @@
-  * 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/. */
- 
- namespace mozilla {
- namespace dom {
- 
- struct PermissionRequest {
-   nsCString type;
--  nsCString access;
-   nsString[] options;
- };
- 
- struct PermissionChoice {
-   nsCString type;
-   nsString choice;
- };
- 
-diff --git a/dom/notification/DesktopNotification.cpp b/dom/notification/DesktopNotification.cpp
---- a/dom/notification/DesktopNotification.cpp
-+++ b/dom/notification/DesktopNotification.cpp
-@@ -306,15 +306,14 @@ DesktopNotificationRequest::GetRequester
-   return NS_OK;
- }
- 
- NS_IMETHODIMP
- DesktopNotificationRequest::GetTypes(nsIArray** aTypes)
- {
-   nsTArray<nsString> emptyOptions;
-   return nsContentPermissionUtils::CreatePermissionArray(NS_LITERAL_CSTRING("desktop-notification"),
--                                                         NS_LITERAL_CSTRING("unused"),
-                                                          emptyOptions,
-                                                          aTypes);
- }
- 
- } // namespace dom
- } // namespace mozilla
-diff --git a/dom/notification/Notification.cpp b/dom/notification/Notification.cpp
---- a/dom/notification/Notification.cpp
-+++ b/dom/notification/Notification.cpp
-@@ -659,17 +659,16 @@ NotificationPermissionRequest::ResolvePr
-   return rv;
- }
- 
- NS_IMETHODIMP
- NotificationPermissionRequest::GetTypes(nsIArray** aTypes)
- {
-   nsTArray<nsString> emptyOptions;
-   return nsContentPermissionUtils::CreatePermissionArray(NS_LITERAL_CSTRING("desktop-notification"),
--                                                         NS_LITERAL_CSTRING("unused"),
-                                                          emptyOptions,
-                                                          aTypes);
- }
- 
- NS_IMPL_ISUPPORTS(NotificationTelemetryService, nsIObserver)
- 
- NotificationTelemetryService::NotificationTelemetryService()
-   : mDNDRecorded(false)
-diff --git a/dom/push/Push.js b/dom/push/Push.js
---- a/dom/push/Push.js
-+++ b/dom/push/Push.js
-@@ -175,17 +175,16 @@ Push.prototype = {
-     } catch (e) {}
-     return permission;
-   },
- 
-   _requestPermission: function(allowCallback, cancelCallback) {
-     // Create an array with a single nsIContentPermissionType element.
-     let type = {
-       type: "desktop-notification",
--      access: null,
-       options: [],
-       QueryInterface: XPCOMUtils.generateQI([Ci.nsIContentPermissionType]),
-     };
-     let typeArray = Cc["@mozilla.org/array;1"].createInstance(Ci.nsIMutableArray);
-     typeArray.appendElement(type);
- 
-     // create a nsIContentPermissionRequest
-     let request = {
-diff --git a/dom/quota/StorageManager.cpp b/dom/quota/StorageManager.cpp
---- a/dom/quota/StorageManager.cpp
-+++ b/dom/quota/StorageManager.cpp
-@@ -794,17 +794,16 @@ NS_IMETHODIMP
- PersistentStoragePermissionRequest::GetTypes(nsIArray** aTypes)
- {
-   MOZ_ASSERT(aTypes);
- 
-   nsTArray<nsString> emptyOptions;
- 
-   return nsContentPermissionUtils::CreatePermissionArray(
-                                        NS_LITERAL_CSTRING("persistent-storage"),
--                                       NS_LITERAL_CSTRING("unused"),
-                                        emptyOptions,
-                                        aTypes);
- }
- 
- /*******************************************************************************
-  * StorageManager
-  ******************************************************************************/
- 
-diff --git a/mobile/android/components/ContentPermissionPrompt.js b/mobile/android/components/ContentPermissionPrompt.js
---- a/mobile/android/components/ContentPermissionPrompt.js
-+++ b/mobile/android/components/ContentPermissionPrompt.js
-@@ -7,42 +7,36 @@ Cu.import("resource://gre/modules/Servic
- Cu.import("resource://gre/modules/XPCOMUtils.jsm");
- 
- const kEntities = {
-   "contacts": "contacts",
-   "desktop-notification": "desktopNotification2",
-   "geolocation": "geolocation",
- };
- 
--// For these types, prompt for permission if action is unknown.
--const PROMPT_FOR_UNKNOWN = [
--  "desktop-notification",
--  "geolocation",
--];
--
- function ContentPermissionPrompt() {}
- 
- ContentPermissionPrompt.prototype = {
-   classID: Components.ID("{C6E8C44D-9F39-4AF7-BCC0-76E38A8310F5}"),
- 
-   QueryInterface: XPCOMUtils.generateQI([Ci.nsIContentPermissionPrompt]),
- 
--  handleExistingPermission: function handleExistingPermission(request, type, denyUnknown, callback) {
-+  handleExistingPermission: function handleExistingPermission(request, type, isApp, callback) {
-     let result = Services.perms.testExactPermissionFromPrincipal(request.principal, type);
-     if (result == Ci.nsIPermissionManager.ALLOW_ACTION) {
-       callback(/* allow */ true);
-       return true;
-     }
- 
-     if (result == Ci.nsIPermissionManager.DENY_ACTION) {
-       callback(/* allow */ false);
-       return true;
-     }
- 
--    if (denyUnknown && result == Ci.nsIPermissionManager.UNKNOWN_ACTION) {
-+    if (isApp && result == Ci.nsIPermissionManager.UNKNOWN_ACTION) {
-       callback(/* allow */ false);
-       return true;
-     }
- 
-     return false;
-   },
- 
-   getChromeWindow: function getChromeWindow(aWindow) {
-@@ -87,20 +81,17 @@ ContentPermissionPrompt.prototype = {
-             (granted ? request.allow : request.cancel)();
-           });
-         return;
-       }
-       request.allow();
-     };
- 
-     // Returns true if the request was handled
--    let access = (perm.access && perm.access !== "unused") ?
--                 (perm.type + "-" + perm.access) : perm.type;
--    if (this.handleExistingPermission(request, access,
--          /* denyUnknown */ isApp || PROMPT_FOR_UNKNOWN.indexOf(perm.type) < 0, callback)) {
-+    if (this.handleExistingPermission(request, perm.type, isApp, callback)) {
-        return;
-     }
- 
-     let chromeWin = this.getChromeForRequest(request);
-     let tab = chromeWin.BrowserApp.getTabForWindow(request.window.top);
-     if (!tab) {
-       return;
-     }
-@@ -108,30 +99,30 @@ ContentPermissionPrompt.prototype = {
-     let browserBundle = Services.strings.createBundle("chrome://browser/locale/browser.properties");
-     let entityName = kEntities[perm.type];
- 
-     let buttons = [{
-       label: browserBundle.GetStringFromName(entityName + ".dontAllow"),
-       callback: function(aChecked) {
-         // If the user checked "Don't ask again" or this is a desktopNotification, make a permanent exception
-         if (aChecked || entityName == "desktopNotification2")
--          Services.perms.addFromPrincipal(request.principal, access, Ci.nsIPermissionManager.DENY_ACTION);
-+          Services.perms.addFromPrincipal(request.principal, perm.type, Ci.nsIPermissionManager.DENY_ACTION);
- 
-         callback(/* allow */ false);
-       }
-     },
-     {
-       label: browserBundle.GetStringFromName(entityName + ".allow"),
-       callback: function(aChecked) {
-         // If the user checked "Don't ask again" or this is a desktopNotification, make a permanent exception
-         if (aChecked || entityName == "desktopNotification2") {
--          Services.perms.addFromPrincipal(request.principal, access, Ci.nsIPermissionManager.ALLOW_ACTION);
-+          Services.perms.addFromPrincipal(request.principal, perm.type, Ci.nsIPermissionManager.ALLOW_ACTION);
-         } else if (isApp) {
-           // Otherwise allow the permission for the current session if the request comes from an app
--          Services.perms.addFromPrincipal(request.principal, access, Ci.nsIPermissionManager.ALLOW_ACTION, Ci.nsIPermissionManager.EXPIRE_SESSION);
-+          Services.perms.addFromPrincipal(request.principal, perm.type, Ci.nsIPermissionManager.ALLOW_ACTION, Ci.nsIPermissionManager.EXPIRE_SESSION);
-         }
- 
-         callback(/* allow */ true);
-       },
-       positive: true
-     }];
- 
-     let requestor = chromeWin.BrowserApp.manifest ? "'" + chromeWin.BrowserApp.manifest.name + "'" : request.principal.URI.host;
-diff --git a/mobile/android/components/geckoview/GeckoViewPermission.js b/mobile/android/components/geckoview/GeckoViewPermission.js
---- a/mobile/android/components/geckoview/GeckoViewPermission.js
-+++ b/mobile/android/components/geckoview/GeckoViewPermission.js
-@@ -219,17 +219,16 @@ GeckoViewPermission.prototype = {
- 
-     let perm = types.queryElementAt(0, Ci.nsIContentPermissionType);
-     let dispatcher = this.getDispatcherForWindow(
-         aRequest.window ? aRequest.window.top : aRequest.element.ownerGlobal.top);
-     let promise = dispatcher.sendRequestForResult({
-         type: "GeckoView:ContentPermission",
-         uri: aRequest.principal.URI.spec,
-         perm: perm.type,
--        access: perm.access !== "unused" ? perm.access : null,
-     }).then(granted => {
-       if (!granted) {
-         return false;
-       }
-       // Ask for app permission after asking for content permission.
-       if (perm.type === "geolocation") {
-         return this.getAppPermissions(dispatcher, [PERM_ACCESS_FINE_LOCATION]);
-       }

+ 0 - 13
comm-esr60/mozilla-esr60/patches/series

@@ -217,19 +217,6 @@ NOBUG-BACKOUT-1439860-60.patch
 TOP-9999999-rust133-257.patch
 TOP-9999999-fixlangpack-257.patch
 mozilla-esr60-top-nonexisting.patch
-1446809-1-61a1.patch
-1446809-2-61a1.patch
-1446809-3-61a1.patch
-1446809-4-61a1.patch
-1446809-5-61a1.patch
-1446809-6-61a1.patch
-1446809-7-61a1.patch
-1446809-8-61a1.patch
-1446809-9-61a1.patch
-1477678-63a1.patch
-1488401-64a1.patch
-1502747-65a1.patch
-1447873-61a1.patch
 1455408-1-61a1.patch
 1455408-2-61a1.patch
 1455408-3-61a1.patch

+ 3 - 6
comm-esr60/mozilla-esr60/patches/1446809-1-61a1.patch → rel-257/mozilla-esr60/patches/1446809-1-61a1.patch

@@ -2,7 +2,7 @@
 # User Sylvestre Ledru <sledru@mozilla.com>
 # Date 1521397625 -3600
 # Node ID 3dedc3e974318acc9b72fc89d8ce77217c467f21
-# Parent  2fed4b0da8402c38a986c8d2c99821e997c1bbdf
+# Parent  24a247584c0648db30cb725558d491fd12aef4cc
 Bug 1446809 - Remove some b2g leftover in desktop/ r=florian
 
 MozReview-Commit-ID: FPwAZmpoiUV
@@ -36,7 +36,7 @@ diff --git a/browser/components/BrowserComponents.manifest b/browser/components/
 diff --git a/browser/components/feeds/BrowserFeeds.manifest b/browser/components/feeds/BrowserFeeds.manifest
 --- a/browser/components/feeds/BrowserFeeds.manifest
 +++ b/browser/components/feeds/BrowserFeeds.manifest
-@@ -1,25 +1,23 @@
+@@ -1,21 +1,19 @@
  # This component must restrict its registration for the app-startup category
  # to the specific list of apps that use it so it doesn't get loaded in xpcshell.
  # Thus we restrict it to these apps:
@@ -53,10 +53,6 @@ diff --git a/browser/components/feeds/BrowserFeeds.manifest b/browser/components
  contract @mozilla.org/streamconv;1?from=application/vnd.mozilla.maybe.audio.feed&to=*/* {229fa115-9412-4d32-baf3-2fc407f76fb1}
  component {2376201c-bbc6-472f-9b62-7548040a61c6} FeedConverter.js
  contract @mozilla.org/browser/feeds/result-service;1 {2376201c-bbc6-472f-9b62-7548040a61c6}
- component {4f91ef2e-57ba-472e-ab7a-b4999e42d6c0} FeedConverter.js
- contract @mozilla.org/network/protocol;1?name=feed {4f91ef2e-57ba-472e-ab7a-b4999e42d6c0}
- component {1c31ed79-accd-4b94-b517-06e0c81999d5} FeedConverter.js
- contract @mozilla.org/network/protocol;1?name=pcast {1c31ed79-accd-4b94-b517-06e0c81999d5}
  component {49bb6593-3aff-4eb3-a068-2712c28bd58e} FeedWriter.js
  contract @mozilla.org/browser/feeds/result-writer;1 {49bb6593-3aff-4eb3-a068-2712c28bd58e}
  component {792a7e82-06a0-437c-af63-b2d12e808acc} WebContentConverter.js
@@ -105,3 +101,4 @@ diff --git a/browser/experiments/docs/manifest.rst b/browser/experiments/docs/ma
     (optional) String version number of the minimum application version this
     experiment should run on.
  
+

+ 8 - 13
comm-esr60/mozilla-esr60/patches/1446809-2-61a1.patch → rel-257/mozilla-esr60/patches/1446809-2-61a1.patch

@@ -2,7 +2,7 @@
 # User Sylvestre Ledru <sledru@mozilla.com>
 # Date 1521539183 -3600
 # Node ID b909b93e90f9bdde2cefe9c09f55b0c8b68722ef
-# Parent  a0e123fc7dfa0d93712dcc51119824d3722b2a28
+# Parent  3dedc3e974318acc9b72fc89d8ce77217c467f21
 Bug 1446809 - Remove some b2g leftover in the build r=glandium
 
 MozReview-Commit-ID: EAXd3JmiL2Z
@@ -29,7 +29,7 @@ diff --git a/build/docs/mozinfo.rst b/build/docs/mozinfo.rst
  
     Always defined.
  
-@@ -102,17 +102,17 @@ nightly_build
+@@ -109,17 +109,17 @@ nightly_build
     Whether this is a nightly build.
  
     Values are ``true`` and ``false``.
@@ -51,8 +51,8 @@ diff --git a/build/docs/mozinfo.rst b/build/docs/mozinfo.rst
 diff --git a/build/unix/mozconfig.linux b/build/unix/mozconfig.linux
 --- a/build/unix/mozconfig.linux
 +++ b/build/unix/mozconfig.linux
-@@ -3,32 +3,23 @@ if [ "x$IS_NIGHTLY" = "xyes" ]; then
-   MOZ_AUTOMATION_UPLOAD_SYMBOLS=${MOZ_AUTOMATION_UPLOAD_SYMBOLS-1}
+@@ -2,26 +2,17 @@ if [ "x$IS_NIGHTLY" = "xyes" ]; then
+   # Some nightlies (eg: Mulet) don't want these set.
    MOZ_AUTOMATION_UPDATE_PACKAGING=${MOZ_AUTOMATION_UPDATE_PACKAGING-1}
  fi
  
@@ -74,7 +74,7 @@ diff --git a/build/unix/mozconfig.linux b/build/unix/mozconfig.linux
  
 -  # We want to make sure we use binutils and other binaries in the tooltool
 -  # package.
--  mk_add_options PATH="$TOOLTOOL_DIR/gcc/bin:$PATH"
+-  mk_add_options "export PATH=$TOOLTOOL_DIR/gcc/bin:$PATH"
 -else
 -  CC="/tools/gcc-4.7.3-0moz1/bin/gcc"
 -  CXX="/tools/gcc-4.7.3-0moz1/bin/g++"
@@ -83,13 +83,7 @@ diff --git a/build/unix/mozconfig.linux b/build/unix/mozconfig.linux
 +# package.
 +mk_add_options "export PATH=$TOOLTOOL_DIR/gcc/bin:$PATH"
  
- ac_add_options --enable-elf-hack
- 
  . "$topsrcdir/build/unix/mozconfig.stdcxx"
- 
- # PKG_CONFIG_LIBDIR is appropriately overridden in mozconfig.linux32
- export PKG_CONFIG_LIBDIR=/usr/lib64/pkgconfig:/usr/share/pkgconfig
- 
 diff --git a/toolkit/nss.configure b/toolkit/nss.configure
 --- a/toolkit/nss.configure
 +++ b/toolkit/nss.configure
@@ -111,8 +105,8 @@ diff --git a/toolkit/nss.configure b/toolkit/nss.configure
 diff --git a/toolkit/toolkit.mozbuild b/toolkit/toolkit.mozbuild
 --- a/toolkit/toolkit.mozbuild
 +++ b/toolkit/toolkit.mozbuild
-@@ -8,18 +8,17 @@ DIRS += [
-     '/toolkit/library/gtest/rust',
+@@ -36,18 +36,17 @@ if CONFIG['ENABLE_TESTS']:
+ DIRS += [
      '/toolkit/library/rust',
  ]
  
@@ -131,3 +125,4 @@ diff --git a/toolkit/toolkit.mozbuild b/toolkit/toolkit.mozbuild
  # the signing related bits of libmar depend on nss
  if CONFIG['MOZ_UPDATER']:
      DIRS += ['/modules/libmar']
+

+ 3 - 2
comm-esr60/mozilla-esr60/patches/1446809-3-61a1.patch → rel-257/mozilla-esr60/patches/1446809-3-61a1.patch

@@ -2,7 +2,7 @@
 # User Sylvestre Ledru <sledru@mozilla.com>
 # Date 1521577226 -3600
 # Node ID db5c66fc744811eb8984b8b98e8d990145374755
-# Parent  7447ae20939329f7af044a87df90fb9b4bb78d40
+# Parent  b909b93e90f9bdde2cefe9c09f55b0c8b68722ef
 Bug 1446809 - Remove some b2g leftover in the testing/mozbase r=jgraham
 
 MozReview-Commit-ID: 6PGuSXVjMB9
@@ -10,7 +10,7 @@ MozReview-Commit-ID: 6PGuSXVjMB9
 diff --git a/testing/mozbase/moztest/tests/test.py b/testing/mozbase/moztest/tests/test.py
 --- a/testing/mozbase/moztest/tests/test.py
 +++ b/testing/mozbase/moztest/tests/test.py
-@@ -34,25 +34,24 @@ class Result(unittest.TestCase):
+@@ -36,25 +36,24 @@ class Result(unittest.TestCase):
  
  
  class Collection(unittest.TestCase):
@@ -61,3 +61,4 @@ diff --git a/testing/mozbase/packages.txt b/testing/mozbase/packages.txt
  mozinfo.pth:testing/mozbase/mozinfo
  mozinstall.pth:testing/mozbase/mozinstall
  mozleak.pth:testing/mozbase/mozleak
+

+ 14 - 14
comm-esr60/mozilla-esr60/patches/1446809-4-61a1.patch → rel-257/mozilla-esr60/patches/1446809-4-61a1.patch

@@ -2,7 +2,7 @@
 # User Sylvestre Ledru <sledru@mozilla.com>
 # Date 1521397805 -3600
 # Node ID 2c827ac938dcbdd7224bb9bc0b2345eb82393d36
-# Parent  9f69e9d0feb71444525f80fe5512bd6636c14b5f
+# Parent  6419a201e2d9410ce725bbea4b739fa5816a8102
 Bug 1446809 - Remove some b2g leftover in widget/NativeKeyToDOMKeyName.h r=froydnj
 
 MozReview-Commit-ID: 7nRuHThygp1
@@ -34,7 +34,7 @@ diff --git a/widget/NativeKeyToDOMKeyName.h b/widget/NativeKeyToDOMKeyName.h
  #define KEY_MAP_WIN(aCPPKeyName, aNativeKey) \
    NS_NATIVE_KEY_TO_DOM_KEY_NAME_INDEX(aNativeKey, KEY_NAME_INDEX_##aCPPKeyName)
  #elif defined(NS_JAPANESE_NATIVE_KEY_TO_DOM_KEY_NAME_INDEX)
-@@ -75,19 +71,16 @@
+@@ -74,19 +70,16 @@
  #elif defined(MOZ_WIDGET_GTK)
  #undef KEY_MAP_GTK
  #define KEY_MAP_GTK(aCPPKeyName, aNativeKey) \
@@ -52,39 +52,39 @@ diff --git a/widget/NativeKeyToDOMKeyName.h b/widget/NativeKeyToDOMKeyName.h
   * Modifier Keys
   ******************************************************************************/
  // Alt
- KEY_MAP_WIN     (Alt, VK_MENU)
- KEY_MAP_WIN     (Alt, VK_LMENU)
-@@ -1048,27 +1041,26 @@ KEY_MAP_ANDROID (AppSwitch, AKEYCODE_APP
+ KEY_MAP_WIN(Alt, VK_MENU)
+ KEY_MAP_WIN(Alt, VK_LMENU)
+@@ -1047,27 +1040,26 @@ KEY_MAP_ANDROID(AppSwitch, AKEYCODE_APP_
  
  // Call
- KEY_MAP_ANDROID (Call, AKEYCODE_CALL)
+ KEY_MAP_ANDROID(Call, AKEYCODE_CALL)
  
  // Camera
- KEY_MAP_ANDROID (Camera, AKEYCODE_CAMERA)
+ KEY_MAP_ANDROID(Camera, AKEYCODE_CAMERA)
  
  // CameraFocus
 -KEY_MAP_ANDROID_EXCEPT_B2G(CameraFocus, AKEYCODE_FOCUS)
 +KEY_MAP_ANDROID(CameraFocus, AKEYCODE_FOCUS)
  
  // EndCall
- KEY_MAP_ANDROID (EndCall, AKEYCODE_ENDCALL)
+ KEY_MAP_ANDROID(EndCall, AKEYCODE_ENDCALL)
  
  // GoBack
- KEY_MAP_ANDROID (GoBack, AKEYCODE_BACK)
+ KEY_MAP_ANDROID(GoBack, AKEYCODE_BACK)
  
  // GoHome
--KEY_MAP_ANDROID_EXCEPT_B2G(GoHome,     AKEYCODE_HOME)
--KEY_MAP_B2G               (HomeScreen, AKEYCODE_HOME)
+-KEY_MAP_ANDROID_EXCEPT_B2G(GoHome, AKEYCODE_HOME)
+-KEY_MAP_B2G(HomeScreen, AKEYCODE_HOME)
 +KEY_MAP_ANDROID(GoHome,     AKEYCODE_HOME)
  
  // HeadsetHook
- KEY_MAP_ANDROID (HeadsetHook, AKEYCODE_HEADSETHOOK)
+ KEY_MAP_ANDROID(HeadsetHook, AKEYCODE_HEADSETHOOK)
  
  // Notification
- KEY_MAP_ANDROID (Notification, AKEYCODE_NOTIFICATION)
+ KEY_MAP_ANDROID(Notification, AKEYCODE_NOTIFICATION)
  
  // MannerMode
-@@ -1280,10 +1272,8 @@ KEY_MAP_ANDROID (SoftRight, AKEYCODE_SOF
+@@ -1280,10 +1272,8 @@ KEY_MAP_ANDROID(SoftRight, AKEYCODE_SOFT
  #undef KEY_MAP_WIN
  #undef KEY_MAP_WIN_JPN
  #undef KEY_MAP_WIN_KOR

+ 3 - 2
comm-esr60/mozilla-esr60/patches/1446809-5-61a1.patch → rel-257/mozilla-esr60/patches/1446809-5-61a1.patch

@@ -2,7 +2,7 @@
 # User Sylvestre Ledru <sledru@mozilla.com>
 # Date 1521397856 -3600
 # Node ID b2647d006cf4fe5d7147ef1eda48c93d54a7af5a
-# Parent  6b04a02be636cac30abb537039bc469edbd04bba
+# Parent  2c827ac938dcbdd7224bb9bc0b2345eb82393d36
 Bug 1446809 - Remove some b2g leftover in the devtools doc r=jdescottes
 
 MozReview-Commit-ID: L6CYiizDSwF
@@ -31,7 +31,7 @@ diff --git a/devtools/docs/backend/actor-registration.md b/devtools/docs/backend
  DebuggerServer.registerModule("devtools/server/actors/webconsole", {
    prefix: "console",
 @@ -33,9 +33,9 @@ DebuggerServer.registerModule("devtools/
- If you are adding a new built-in devtools actor, you should be registering it using `DebuggerServer.registerModule` in `addBrowserActors` or `addTabActors` in `/devtools/server/main.js`.
+ If you are adding a new built-in devtools actor, you should be registering it using `DebuggerServer.registerModule` in `_addBrowserActors` or `addTabActors` in `/devtools/server/main.js`.
  
  If you are adding a new actor from an add-on, you should call `DebuggerServer.registerModule` directly from your add-on code.
  
@@ -41,3 +41,4 @@ diff --git a/devtools/docs/backend/actor-registration.md b/devtools/docs/backend
  
 -It becomes especially important when debugging apps on b2g or pages with e10s when there are more than one process, because that's when we need to spawn a `DebuggerServer` per process (it may not be immediately obvious that the server in the main process is mostly only here for piping messages to the actors in the child process).
 +It becomes especially important when debugging pages with e10s when there are more than one process, because that's when we need to spawn a `DebuggerServer` per process (it may not be immediately obvious that the server in the main process is mostly only here for piping messages to the actors in the child process).
+

+ 10 - 9
comm-esr60/mozilla-esr60/patches/1446809-6-61a1.patch → rel-257/mozilla-esr60/patches/1446809-6-61a1.patch

@@ -2,7 +2,7 @@
 # User Sylvestre Ledru <sledru@mozilla.com>
 # Date 1521397922 -3600
 # Node ID 4ab35ba9af3d26556b17a54f0e451b30dfd5a88a
-# Parent  e71a3a64a5fb6b799dea03ed4c8db5c576afee6b
+# Parent  b2647d006cf4fe5d7147ef1eda48c93d54a7af5a
 Bug 1446809 - Remove some b2g leftover in some webgl tests r=jgilbert
 
 MozReview-Commit-ID: Etx3KYygQgl
@@ -27,7 +27,7 @@ diff --git a/dom/canvas/test/webgl-conf/generated-mochitest.ini b/dom/canvas/tes
                  checkout/closure-library/AUTHORS
                  checkout/closure-library/CONTRIBUTING
                  checkout/closure-library/LICENSE
-@@ -7533,17 +7533,17 @@ skip-if = (os == 'mac')
+@@ -7532,17 +7532,17 @@ skip-if = (os == 'mac')
  skip-if = (os == 'android')
  [generated/test_conformance__canvas__texture-bindings-unaffected-on-resize.html]
  [generated/test_conformance__canvas__to-data-url-test.html]
@@ -46,7 +46,7 @@ diff --git a/dom/canvas/test/webgl-conf/generated-mochitest.ini b/dom/canvas/tes
  skip-if = (os == 'android')
  [generated/test_conformance__context__context-hidden-alpha.html]
  [generated/test_conformance__context__context-lost-restored.html]
-@@ -7930,22 +7930,20 @@ fail-if = (os == 'mac')
+@@ -7926,22 +7926,20 @@ fail-if = (os == 'android')
  [generated/test_conformance__glsl__misc__struct-specifiers-in-uniforms.html]
  [generated/test_conformance__glsl__misc__struct-unary-operators.html]
  [generated/test_conformance__glsl__misc__ternary-operator-on-arrays.html]
@@ -69,7 +69,7 @@ diff --git a/dom/canvas/test/webgl-conf/generated-mochitest.ini b/dom/canvas/tes
  skip-if = (os == 'android')
  [generated/test_conformance__glsl__samplers__glsl-function-texture2dprojlod.html]
  skip-if = (os == 'android')
-@@ -7967,31 +7965,30 @@ skip-if = (os == 'linux')
+@@ -7963,31 +7961,30 @@ skip-if = (os == 'linux')
  [generated/test_conformance__limits__gl-min-uniforms.html]
  [generated/test_conformance__misc__bad-arguments-test.html]
  skip-if = (os == 'mac') || (os == 'win') || (os == 'linux') || (os == 'android')
@@ -102,7 +102,7 @@ diff --git a/dom/canvas/test/webgl-conf/generated-mochitest.ini b/dom/canvas/tes
  [generated/test_conformance__more__conformance__getContext.html]
  [generated/test_conformance__more__conformance__methods.html]
  [generated/test_conformance__more__conformance__quickCheckAPI-A.html]
-@@ -8207,17 +8204,16 @@ fail-if = (os == 'mac' && os_version == 
+@@ -8203,17 +8200,16 @@ fail-if = (os == 'mac' && os_version == 
  [generated/test_conformance__ogles__GL__swizzlers__swizzlers_105_to_112.html]
  [generated/test_conformance__ogles__GL__swizzlers__swizzlers_113_to_120.html]
  [generated/test_conformance__ogles__GL__tan__tan_001_to_006.html]
@@ -159,13 +159,13 @@ diff --git a/dom/canvas/test/webgl-conf/mochitest-errata.ini b/dom/canvas/test/w
 +skip-if = (os == 'linux') || (os == 'android')
  
  [generated/test_conformance__extensions__webgl-draw-buffers.html]
- fail-if = (os == 'mac') || (os == 'win')
  # Crashes
  skip-if = (os == 'linux')
  
  [generated/test_conformance__glsl__constructors__glsl-construct-bvec3.html]
  # Crashes from libglsl.so
-@@ -108,18 +107,18 @@ skip-if = ((os == 'linux') && asan)
+ # application crashed [@ jemalloc_crash] on Android
+@@ -107,18 +106,18 @@ skip-if = ((os == 'linux') && asan)
  [generated/test_conformance__glsl__bugs__sampler-array-using-loop-index.html]
  # Testfail on Linux after removing SH_UNROLL_FOR_LOOP_WITH_SAMPLER_ARRAY_INDEX.
  # Only happen on tryserver
@@ -186,7 +186,7 @@ diff --git a/dom/canvas/test/webgl-conf/mochitest-errata.ini b/dom/canvas/test/w
  
  [generated/test_conformance__extensions__oes-vertex-array-object.html]
  fail-if = (os == 'mac') || (os == 'linux') || (os == 'win')
-@@ -336,36 +335,34 @@ fail-if = (os == 'mac') || (os == 'win')
+@@ -333,36 +332,34 @@ fail-if = (os == 'mac') || (os == 'win')
  [generated/test_2_conformance__textures__video__tex-2d-rgba-rgba-unsigned_byte.html]
  fail-if = (os == 'mac') || (os == 'win')
  [generated/test_2_conformance__textures__video__tex-2d-rgba-rgba-unsigned_short_4_4_4_4.html]
@@ -225,7 +225,7 @@ diff --git a/dom/canvas/test/webgl-conf/mochitest-errata.ini b/dom/canvas/test/w
  ########################################################################
  ########################################################################
  # Android
-@@ -580,26 +577,20 @@ skip-if = (os == 'android')
+@@ -578,26 +575,20 @@ skip-if = (os == 'android')
  # Crashes
  skip-if = (os == 'android')
  [generated/test_conformance__renderbuffers__framebuffer-object-attachment.html]
@@ -252,3 +252,4 @@ diff --git a/dom/canvas/test/webgl-conf/mochitest-errata.ini b/dom/canvas/test/w
  # mozalloc_abort in libglsl.so
  skip-if = (os == 'linux')
  [generated/test_conformance__glsl__constructors__glsl-construct-vec3.html]
+

+ 0 - 0
comm-esr60/mozilla-esr60/patches/1446809-7-61a1.patch → rel-257/mozilla-esr60/patches/1446809-7-61a1.patch


+ 21 - 39
comm-esr60/mozilla-esr60/patches/1446809-8-61a1.patch → rel-257/mozilla-esr60/patches/1446809-8-61a1.patch

@@ -2,7 +2,7 @@
 # User Sylvestre Ledru <sledru@mozilla.com>
 # Date 1521452597 -3600
 # Node ID 613729ea03d7cd8be60299086a2e4dd1f4431962
-# Parent  9147d3cea75c872b350d0704d819fd4c833f4a52
+# Parent  29f30bc08ca7b6f27e074e1b6134f5deb2dce227
 Bug 1446809 - Ride along: also remove some mobile/xul/ legacy declaration r=florian
 
 MozReview-Commit-ID: 102syxweBN3
@@ -10,25 +10,24 @@ MozReview-Commit-ID: 102syxweBN3
 diff --git a/accessible/jsat/Utils.jsm b/accessible/jsat/Utils.jsm
 --- a/accessible/jsat/Utils.jsm
 +++ b/accessible/jsat/Utils.jsm
-@@ -24,18 +24,18 @@ XPCOMUtils.defineLazyModuleGetter(this, 
+@@ -24,18 +24,17 @@ ChromeUtils.defineModuleGetter(this, "Pl
  
- this.EXPORTED_SYMBOLS = ['Utils', 'Logger', 'PivotContext', 'PrefCache']; // jshint ignore:line
+ var EXPORTED_SYMBOLS = ["Utils", "Logger", "PivotContext", "PrefCache"]; // jshint ignore:line
  
- this.Utils = { // jshint ignore:line
+ var Utils = { // jshint ignore:line
    _buildAppMap: {
-     '{3c2e2abc-06d4-11e1-ac3b-374f68613e61}': 'b2g',
-     '{d1bfe7d9-c01e-4237-998b-7b5f960a4314}': 'graphene',
-     '{ec8030f7-c20a-464f-9b0e-13a3a9e97384}': 'browser',
--    '{aa3c5121-dab2-40e2-81ca-7ea25febc110}': 'mobile/android',
--    '{a23983c0-fd0e-11dc-95ff-0800200c9a66}': 'mobile/xul'
-+    '{aa3c5121-dab2-40e2-81ca-7ea25febc110}': 'mobile/android'
-+
+     "{3c2e2abc-06d4-11e1-ac3b-374f68613e61}": "b2g",
+     "{d1bfe7d9-c01e-4237-998b-7b5f960a4314}": "graphene",
+     "{ec8030f7-c20a-464f-9b0e-13a3a9e97384}": "browser",
+-    "{aa3c5121-dab2-40e2-81ca-7ea25febc110}": "mobile/android",
+-    "{a23983c0-fd0e-11dc-95ff-0800200c9a66}": "mobile/xul"
++    "{aa3c5121-dab2-40e2-81ca-7ea25febc110}": "mobile/android"
    },
  
    init: function Utils_init(aWindow) {
      if (this._win) {
        // XXX: only supports attaching to one window now.
-       throw new Error('Only one top-level window could used with AccessFu');
+       throw new Error("Only one top-level window could used with AccessFu");
      }
      this._win = Cu.getWeakReference(aWindow);
 diff --git a/browser/components/BrowserComponents.manifest b/browser/components/BrowserComponents.manifest
@@ -56,7 +55,7 @@ diff --git a/browser/components/BrowserComponents.manifest b/browser/components/
 diff --git a/browser/components/feeds/BrowserFeeds.manifest b/browser/components/feeds/BrowserFeeds.manifest
 --- a/browser/components/feeds/BrowserFeeds.manifest
 +++ b/browser/components/feeds/BrowserFeeds.manifest
-@@ -1,23 +1,22 @@
+@@ -1,19 +1,18 @@
  # This component must restrict its registration for the app-startup category
  # to the specific list of apps that use it so it doesn't get loaded in xpcshell.
  # Thus we restrict it to these apps:
@@ -71,10 +70,6 @@ diff --git a/browser/components/feeds/BrowserFeeds.manifest b/browser/components
  contract @mozilla.org/streamconv;1?from=application/vnd.mozilla.maybe.audio.feed&to=*/* {229fa115-9412-4d32-baf3-2fc407f76fb1}
  component {2376201c-bbc6-472f-9b62-7548040a61c6} FeedConverter.js
  contract @mozilla.org/browser/feeds/result-service;1 {2376201c-bbc6-472f-9b62-7548040a61c6}
- component {4f91ef2e-57ba-472e-ab7a-b4999e42d6c0} FeedConverter.js
- contract @mozilla.org/network/protocol;1?name=feed {4f91ef2e-57ba-472e-ab7a-b4999e42d6c0}
- component {1c31ed79-accd-4b94-b517-06e0c81999d5} FeedConverter.js
- contract @mozilla.org/network/protocol;1?name=pcast {1c31ed79-accd-4b94-b517-06e0c81999d5}
  component {49bb6593-3aff-4eb3-a068-2712c28bd58e} FeedWriter.js
  contract @mozilla.org/browser/feeds/result-writer;1 {49bb6593-3aff-4eb3-a068-2712c28bd58e}
  component {792a7e82-06a0-437c-af63-b2d12e808acc} WebContentConverter.js
@@ -102,7 +97,7 @@ diff --git a/browser/components/sessionstore/nsSessionStore.manifest b/browser/c
 diff --git a/devtools/shared/system.js b/devtools/shared/system.js
 --- a/devtools/shared/system.js
 +++ b/devtools/shared/system.js
-@@ -22,18 +22,17 @@ loader.lazyGetter(this, "oscpu", () => {
+@@ -35,18 +35,17 @@ loader.lazyGetter(this, "endianness", ()
  });
  
  const APP_MAP = {
@@ -118,14 +113,14 @@ diff --git a/devtools/shared/system.js b/devtools/shared/system.js
  
  var CACHED_INFO = null;
  
- function* getSystemInfo() {
+ async function getSystemInfo() {
    if (CACHED_INFO) {
      return CACHED_INFO;
    }
-diff --git a/mobile/android/chrome/content/browser.js b/mobile/android/chrome/content/browser.js
---- a/mobile/android/chrome/content/browser.js
-+++ b/mobile/android/chrome/content/browser.js
-@@ -5150,17 +5150,16 @@ var FormAssistant = {
+diff --git a/mobile/android/modules/FormAssistant.jsm b/mobile/android/modules/FormAssistant.jsm
+--- a/mobile/android/modules/FormAssistant.jsm
++++ b/mobile/android/modules/FormAssistant.jsm
+@@ -230,17 +230,16 @@ var FormAssistant = {
      };
  
      this._formAutoCompleteService.autoCompleteSearchAsync(aElement.name || aElement.id,
@@ -139,20 +134,7 @@ diff --git a/mobile/android/chrome/content/browser.js b/mobile/android/chrome/co
     * components/satchel/src/nsInputListAutoComplete.js but sadly this one is
     * used by the autocomplete.xml binding which is not in used in fennec
     */
-   _getListSuggestions: function _getListSuggestions(aElement) {
-     if (!(aElement instanceof HTMLInputElement) || !aElement.list)
+   _getListSuggestions: function(aElement) {
+     if (!(aElement instanceof Ci.nsIDOMHTMLInputElement) || !aElement.list) {
        return [];
- 
-diff --git a/testing/mozharness/configs/multi_locale/standalone_mozilla-central.py b/testing/mozharness/configs/multi_locale/standalone_mozilla-central.py
---- a/testing/mozharness/configs/multi_locale/standalone_mozilla-central.py
-+++ b/testing/mozharness/configs/multi_locale/standalone_mozilla-central.py
-@@ -1,8 +1,9 @@
-+
- import os
- # The name of the directory we'll pull our source into.
- BUILD_DIR = "mozilla-central"
- # This is everything that comes after https://hg.mozilla.org/
- # e.g. "releases/mozilla-aurora"
- REPO_PATH = "mozilla-central"
- # This is where the l10n repos are (everything after https://hg.mozilla.org/)
- # for mozilla-central, that's "l10n-central".
+     }

+ 15 - 15
comm-esr60/mozilla-esr60/patches/1446809-9-61a1.patch → rel-257/mozilla-esr60/patches/1446809-9-61a1.patch

@@ -2,7 +2,7 @@
 # User Sylvestre Ledru <sledru@mozilla.com>
 # Date 1521452729 -3600
 # Node ID 2ad7c7ea01be13997598d954528af7c12f70dd39
-# Parent  6816cc117a03c92c2a0b449b51c67ddf390142da
+# Parent  83b1bb8ef93475ebdd22eb8a75a49d9539a8a964
 Bug 1446809 - Remove some b2g leftover in devtools/shared/system.js r=jdescottes
 
 MozReview-Commit-ID: 1YlBPwjyWO2
@@ -10,8 +10,8 @@ MozReview-Commit-ID: 1YlBPwjyWO2
 diff --git a/devtools/shared/system.js b/devtools/shared/system.js
 --- a/devtools/shared/system.js
 +++ b/devtools/shared/system.js
-@@ -21,17 +21,16 @@ loader.lazyGetter(this, "oscpu", () => {
-            .getService(Ci.nsIHttpProtocolHandler).oscpu;
+@@ -34,17 +34,16 @@ loader.lazyGetter(this, "endianness", ()
+   return "BE";
  });
  
  const APP_MAP = {
@@ -25,10 +25,10 @@ diff --git a/devtools/shared/system.js b/devtools/shared/system.js
  
  var CACHED_INFO = null;
  
- function* getSystemInfo() {
+ async function getSystemInfo() {
    if (CACHED_INFO) {
      return CACHED_INFO;
-@@ -49,32 +48,18 @@ function* getSystemInfo() {
+@@ -62,32 +61,18 @@ async function getSystemInfo() {
      os,
      brandName;
    let appid = appInfo.ID;
@@ -43,8 +43,8 @@ diff --git a/devtools/shared/system.js b/devtools/shared/system.js
 -    // `getSetting` does not work in child processes on b2g.
 -    // TODO bug 1205797, make this work in child processes.
 -    try {
--      hardware = yield exports.getSetting("deviceinfo.hardware");
--      version = yield exports.getSetting("deviceinfo.os");
+-      hardware = await exports.getSetting("deviceinfo.hardware");
+-      version = await exports.getSetting("deviceinfo.os");
 -    } catch (e) {
 -      // Ignore.
 -    }
@@ -63,7 +63,7 @@ diff --git a/devtools/shared/system.js b/devtools/shared/system.js
      brandName = null;
    }
  
-@@ -106,17 +91,16 @@ function* getSystemInfo() {
+@@ -119,17 +104,16 @@ async function getSystemInfo() {
      vendor: appInfo.vendor,
  
      // Name of the application, like "Firefox", "Thunderbird".
@@ -78,15 +78,15 @@ diff --git a/devtools/shared/system.js b/devtools/shared/system.js
      // The application's build ID/date, for example "2004051604".
      appbuildid: appInfo.appBuildID,
  
-     // The application's changeset.
-     changeset: exports.getAppIniString("App", "SourceStamp"),
- 
-@@ -140,17 +124,16 @@ function* getSystemInfo() {
+     // The build ID/date of Gecko and the XULRunner platform.
+     platformbuildid: appInfo.platformBuildID,
+     geckobuildid: appInfo.platformBuildID,
+@@ -150,17 +134,16 @@ async function getSystemInfo() {
      // Returns the endianness of the architecture: either "LE" or "BE"
-     endianness: OS.endianness(),
+     endianness: endianness,
  
      // Returns the hostname of the machine
-     hostname: OS.hostname(),
+     hostname: hostname,
  
      // Name of the OS type. Typically the same as `uname -s`. Possible values:
      // https://developer.mozilla.org/en/OS_TARGET
@@ -99,7 +99,7 @@ diff --git a/devtools/shared/system.js b/devtools/shared/system.js
      hardware,
  
      // Type of process architecture running:
-@@ -310,17 +293,16 @@ function getOSCPU() {
+@@ -298,17 +281,16 @@ function getOSCPU() {
  }
  
  function getSetting(name) {

+ 118 - 165
comm-esr60/mozilla-esr60/patches/1447873-61a1.patch → rel-257/mozilla-esr60/patches/1447873-61a1.patch

@@ -2,7 +2,7 @@
 # User Makoto Kato <m_kato@ga2.so-net.ne.jp>
 # Date 1521683202 -32400
 # Node ID 6e032627821402c26a1cacf6043ba48c260b409c
-# Parent  3b4159eb83aadc9cd4dc23fd9283da12e4b9966a
+# Parent  3805db0d953fcac7cddebddb84992ef219fae425
 Bug 1447873 - Remove Time API backend in hal. r=gsvelto
 
 Time API is already removed, so hal backend is unnecessary now.
@@ -12,18 +12,17 @@ MozReview-Commit-ID: 8R2VRYIX9Vs
 diff --git a/hal/Hal.cpp b/hal/Hal.cpp
 --- a/hal/Hal.cpp
 +++ b/hal/Hal.cpp
-@@ -377,103 +377,16 @@ GetCurrentBatteryInformation(BatteryInfo
- void
- NotifyBatteryChange(const BatteryInformation& aInfo)
- {
+@@ -334,88 +334,16 @@ void GetCurrentBatteryInformation(Batter
+ }
+ 
+ void NotifyBatteryChange(const BatteryInformation& aInfo) {
    AssertMainThread();
    BatteryObservers().CacheInformation(aInfo);
    BatteryObservers().BroadcastCachedInformation();
  }
  
--class SystemClockChangeObserversManager : public ObserversManager<int64_t>
--{
--protected:
+-class SystemClockChangeObserversManager : public ObserversManager<int64_t> {
+- protected:
 -  void EnableNotifications() override {
 -    PROXY_IF_SANDBOXED(EnableSystemClockChangeNotifications());
 -  }
@@ -33,37 +32,29 @@ diff --git a/hal/Hal.cpp b/hal/Hal.cpp
 -  }
 -};
 -
--static SystemClockChangeObserversManager&
--SystemClockChangeObservers()
--{
+-static SystemClockChangeObserversManager& SystemClockChangeObservers() {
 -  static SystemClockChangeObserversManager sSystemClockChangeObservers;
 -  AssertMainThread();
 -  return sSystemClockChangeObservers;
 -}
 -
--void
--RegisterSystemClockChangeObserver(SystemClockChangeObserver* aObserver)
--{
+-void RegisterSystemClockChangeObserver(SystemClockChangeObserver* aObserver) {
 -  AssertMainThread();
 -  SystemClockChangeObservers().AddObserver(aObserver);
 -}
 -
--void
--UnregisterSystemClockChangeObserver(SystemClockChangeObserver* aObserver)
--{
+-void UnregisterSystemClockChangeObserver(SystemClockChangeObserver* aObserver) {
 -  AssertMainThread();
 -  SystemClockChangeObservers().RemoveObserver(aObserver);
 -}
 -
--void
--NotifySystemClockChange(const int64_t& aClockDeltaMS)
--{
+-void NotifySystemClockChange(const int64_t& aClockDeltaMS) {
 -  SystemClockChangeObservers().BroadcastInformation(aClockDeltaMS);
 -}
 -
--class SystemTimezoneChangeObserversManager : public ObserversManager<SystemTimezoneChangeInformation>
--{
--protected:
+-class SystemTimezoneChangeObserversManager
+-    : public ObserversManager<SystemTimezoneChangeInformation> {
+- protected:
 -  void EnableNotifications() override {
 -    PROXY_IF_SANDBOXED(EnableSystemTimezoneChangeNotifications());
 -  }
@@ -73,53 +64,47 @@ diff --git a/hal/Hal.cpp b/hal/Hal.cpp
 -  }
 -};
 -
--static SystemTimezoneChangeObserversManager&
--SystemTimezoneChangeObservers()
--{
+-static SystemTimezoneChangeObserversManager& SystemTimezoneChangeObservers() {
 -  static SystemTimezoneChangeObserversManager sSystemTimezoneChangeObservers;
 -  return sSystemTimezoneChangeObservers;
 -}
 -
--void
--RegisterSystemTimezoneChangeObserver(SystemTimezoneChangeObserver* aObserver)
--{
+-void RegisterSystemTimezoneChangeObserver(
+-    SystemTimezoneChangeObserver* aObserver) {
 -  AssertMainThread();
 -  SystemTimezoneChangeObservers().AddObserver(aObserver);
 -}
 -
--void
--UnregisterSystemTimezoneChangeObserver(SystemTimezoneChangeObserver* aObserver)
--{
+-void UnregisterSystemTimezoneChangeObserver(
+-    SystemTimezoneChangeObserver* aObserver) {
 -  AssertMainThread();
 -  SystemTimezoneChangeObservers().RemoveObserver(aObserver);
 -}
 -
--void
--NotifySystemTimezoneChange(const SystemTimezoneChangeInformation& aSystemTimezoneChangeInfo)
--{
+-void NotifySystemTimezoneChange(
+-    const SystemTimezoneChangeInformation& aSystemTimezoneChangeInfo) {
 -  nsJSUtils::ResetTimeZone();
--  SystemTimezoneChangeObservers().BroadcastInformation(aSystemTimezoneChangeInfo);
+-  SystemTimezoneChangeObservers().BroadcastInformation(
+-      aSystemTimezoneChangeInfo);
 -}
 -
--void
--AdjustSystemClock(int64_t aDeltaMilliseconds)
--{
+-void AdjustSystemClock(int64_t aDeltaMilliseconds) {
 -  AssertMainThread();
 -  PROXY_IF_SANDBOXED(AdjustSystemClock(aDeltaMilliseconds));
 -}
 -
- void
- EnableSensorNotifications(SensorType aSensor) {
+ void EnableSensorNotifications(SensorType aSensor) {
    AssertMainThread();
    PROXY_IF_SANDBOXED(EnableSensorNotifications(aSensor));
  }
  
- void
- DisableSensorNotifications(SensorType aSensor) {
+ void DisableSensorNotifications(SensorType aSensor) {
+   AssertMainThread();
+   PROXY_IF_SANDBOXED(DisableSensorNotifications(aSensor));
 diff --git a/hal/Hal.h b/hal/Hal.h
 --- a/hal/Hal.h
 +++ b/hal/Hal.h
-@@ -38,19 +38,16 @@ class nsPIDOMWindowInner;
+@@ -37,19 +37,16 @@ class nsPIDOMWindowInner;
  #endif
  
  namespace mozilla {
@@ -131,7 +116,7 @@ diff --git a/hal/Hal.h b/hal/Hal.h
 -typedef Observer<int64_t> SystemClockChangeObserver;
 -typedef Observer<SystemTimezoneChangeInformation> SystemTimezoneChangeObserver;
 -
- } // namespace hal
+ }  // namespace hal
  
  namespace MOZ_HAL_NAMESPACE {
  
@@ -139,7 +124,7 @@ diff --git a/hal/Hal.h b/hal/Hal.h
   * Turn the default vibrator device on/off per the pattern specified
   * by |pattern|.  Each element in the pattern is the number of
   * milliseconds to turn the vibrator on or off.  The first element in
-@@ -166,63 +163,16 @@ void GetCurrentNetworkInformation(hal::N
+@@ -163,63 +160,16 @@ void GetCurrentNetworkInformation(hal::N
  
  /**
   * Notify of a change in the network state.
@@ -158,14 +143,14 @@ diff --git a/hal/Hal.h b/hal/Hal.h
 - * @param aObserver The observer that should be added.
 - */
 -void RegisterSystemClockChangeObserver(
--  hal::SystemClockChangeObserver* aObserver);
+-    hal::SystemClockChangeObserver* aObserver);
 -
 -/**
 - * Unregister the observer for system clock changed.
 - * @param aObserver The observer that should be removed.
 - */
 -void UnregisterSystemClockChangeObserver(
--  hal::SystemClockChangeObserver* aObserver);
+-    hal::SystemClockChangeObserver* aObserver);
 -
 -/**
 - * Notify of a change in the system clock.
@@ -178,21 +163,21 @@ diff --git a/hal/Hal.h b/hal/Hal.h
 - * @param aObserver The observer that should be added.
 - */
 -void RegisterSystemTimezoneChangeObserver(
--  hal::SystemTimezoneChangeObserver* aObserver);
+-    hal::SystemTimezoneChangeObserver* aObserver);
 -
 -/**
 - * Unregister the observer for system timezone changed.
 - * @param aObserver The observer that should be removed.
 - */
 -void UnregisterSystemTimezoneChangeObserver(
--  hal::SystemTimezoneChangeObserver* aObserver);
+-    hal::SystemTimezoneChangeObserver* aObserver);
 -
 -/**
 - * Notify of a change in the system timezone.
 - * @param aSystemTimezoneChangeInfo
 - */
 -void NotifySystemTimezoneChange(
--  const hal::SystemTimezoneChangeInformation& aSystemTimezoneChangeInfo);
+-    const hal::SystemTimezoneChangeInformation& aSystemTimezoneChangeInfo);
 -
 -/**
   * Enable wake lock notifications from the backend.
@@ -239,15 +224,15 @@ diff --git a/hal/HalInternal.h b/hal/HalInternal.h
   * messages to hal_sandbox.
   */
  bool HalChildDestroyed();
- } // namespace MOZ_HAL_NAMESPACE
- } // namespace mozilla
+ }  // namespace MOZ_HAL_NAMESPACE
+ }  // namespace mozilla
  
  #endif  // mozilla_HalInternal_h
 diff --git a/hal/fallback/FallbackTime.cpp b/hal/fallback/FallbackTime.cpp
 deleted file mode 100644
 --- a/hal/fallback/FallbackTime.cpp
 +++ /dev/null
-@@ -1,38 +0,0 @@
+@@ -1,24 +0,0 @@
 -/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
 - * vim: sw=2 ts=8 et :
 - */
@@ -260,42 +245,28 @@ deleted file mode 100644
 -namespace mozilla {
 -namespace hal_impl {
 -
--void
--AdjustSystemClock(int64_t aDeltaMilliseconds)
--{}
+-void AdjustSystemClock(int64_t aDeltaMilliseconds) {}
 -
--void
--EnableSystemClockChangeNotifications()
--{
--}
+-void EnableSystemClockChangeNotifications() {}
 -
--void
--DisableSystemClockChangeNotifications()
--{
--}
+-void DisableSystemClockChangeNotifications() {}
 -
--void
--EnableSystemTimezoneChangeNotifications()
--{
--}
+-void EnableSystemTimezoneChangeNotifications() {}
 -
--void
--DisableSystemTimezoneChangeNotifications()
--{
--}
+-void DisableSystemTimezoneChangeNotifications() {}
 -
--} // namespace hal_impl
--} // namespace mozilla
+-}  // namespace hal_impl
+-}  // namespace mozilla
 diff --git a/hal/moz.build b/hal/moz.build
 --- a/hal/moz.build
 +++ b/hal/moz.build
-@@ -94,17 +94,16 @@ else:
-         'fallback/FallbackSensor.cpp',
+@@ -95,17 +95,16 @@ else:
          'fallback/FallbackVibration.cpp',
      ]
  
- # Fallbacks for backends implemented on Gonk only.
+ # Fallbacks for backends no longer implemented.
  UNIFIED_SOURCES += [
+     'fallback/FallbackDiskSpaceWatcher.cpp',
      'fallback/FallbackProcessPriority.cpp',
      'fallback/FallbackThreadPriority.cpp',
 -    'fallback/FallbackTime.cpp',
@@ -372,90 +343,79 @@ diff --git a/hal/sandbox/PHal.ipdl b/hal/sandbox/PHal.ipdl
 diff --git a/hal/sandbox/SandboxHal.cpp b/hal/sandbox/SandboxHal.cpp
 --- a/hal/sandbox/SandboxHal.cpp
 +++ b/hal/sandbox/SandboxHal.cpp
-@@ -132,46 +132,16 @@ LockScreenOrientation(const dom::ScreenO
- 
- void
- UnlockScreenOrientation()
- {
-   Hal()->SendUnlockScreenOrientation();
+@@ -91,36 +91,16 @@ void GetCurrentScreenConfiguration(Scree
+ bool LockScreenOrientation(const dom::ScreenOrientationInternal& aOrientation) {
+   bool allowed;
+   Hal()->SendLockScreenOrientation(aOrientation, &allowed);
+   return allowed;
  }
  
- void
--AdjustSystemClock(int64_t aDeltaMilliseconds)
--{
+ void UnlockScreenOrientation() { Hal()->SendUnlockScreenOrientation(); }
+ 
+-void AdjustSystemClock(int64_t aDeltaMilliseconds) {
 -  Hal()->SendAdjustSystemClock(aDeltaMilliseconds);
 -}
 -
--void
--EnableSystemClockChangeNotifications()
--{
+-void EnableSystemClockChangeNotifications() {
 -  Hal()->SendEnableSystemClockChangeNotifications();
 -}
 -
--void
--DisableSystemClockChangeNotifications()
--{
+-void DisableSystemClockChangeNotifications() {
 -  Hal()->SendDisableSystemClockChangeNotifications();
 -}
 -
--void
--EnableSystemTimezoneChangeNotifications()
--{
+-void EnableSystemTimezoneChangeNotifications() {
 -  Hal()->SendEnableSystemTimezoneChangeNotifications();
 -}
 -
--void
--DisableSystemTimezoneChangeNotifications()
--{
+-void DisableSystemTimezoneChangeNotifications() {
 -  Hal()->SendDisableSystemTimezoneChangeNotifications();
 -}
 -
--void
- EnableSensorNotifications(SensorType aSensor) {
+ void EnableSensorNotifications(SensorType aSensor) {
    Hal()->SendEnableSensorNotifications(aSensor);
  }
  
- void
- DisableSensorNotifications(SensorType aSensor) {
+ void DisableSensorNotifications(SensorType aSensor) {
    Hal()->SendDisableSensorNotifications(aSensor);
  }
-@@ -251,35 +221,31 @@ SetThreadPriority(PlatformThreadId aThre
+ 
+@@ -182,32 +162,28 @@ void StopDiskSpaceWatcher() {
+   MOZ_CRASH("StopDiskSpaceWatcher() can't be called from sandboxed contexts.");
  }
  
- class HalParent : public PHalParent
-                 , public BatteryObserver
-                 , public NetworkObserver
-                 , public ISensorObserver
-                 , public WakeLockObserver
-                 , public ScreenConfigurationObserver
--                , public SystemClockChangeObserver
--                , public SystemTimezoneChangeObserver
- {
- public:
-   virtual void
-   ActorDestroy(ActorDestroyReason aWhy) override
-   {
+ class HalParent : public PHalParent,
+                   public BatteryObserver,
+                   public NetworkObserver,
+                   public ISensorObserver,
+                   public WakeLockObserver,
+-                  public ScreenConfigurationObserver,
+-                  public SystemClockChangeObserver,
+-                  public SystemTimezoneChangeObserver {
++                  public ScreenConfigurationObserver {
+  public:
+   virtual void ActorDestroy(ActorDestroyReason aWhy) override {
      // NB: you *must* unconditionally unregister your observer here,
      // if it *may* be registered below.
      hal::UnregisterBatteryObserver(this);
      hal::UnregisterNetworkObserver(this);
      hal::UnregisterScreenConfigurationObserver(this);
-     for (int32_t sensor = SENSOR_UNKNOWN + 1;
-          sensor < NUM_SENSOR_TYPE; ++sensor) {
-       hal::UnregisterSensorObserver(SensorType(sensor), this);
+     for (auto sensor : MakeEnumeratedRange(NUM_SENSOR_TYPE)) {
+       hal::UnregisterSensorObserver(sensor, this);
      }
      hal::UnregisterWakeLockObserver(this);
 -    hal::UnregisterSystemClockChangeObserver(this);
 -    hal::UnregisterSystemTimezoneChangeObserver(this);
    }
  
-   virtual mozilla::ipc::IPCResult
-   RecvVibrate(InfallibleTArray<unsigned int>&& pattern,
-               InfallibleTArray<uint64_t>&& id,
-               PBrowserParent *browserParent) override
-   {
+   virtual mozilla::ipc::IPCResult RecvVibrate(
+       InfallibleTArray<unsigned int>&& pattern, InfallibleTArray<uint64_t>&& id,
+       PBrowserParent* browserParent) override {
      // We give all content vibration permission.
-@@ -386,51 +352,16 @@ public:
+     //    TabParent *tabParent = TabParent::GetFrom(browserParent);
+     /* xxxkhuey wtf
+@@ -303,46 +279,16 @@ class HalParent : public PHalParent,
+     hal::UnlockScreenOrientation();
      return IPC_OK();
    }
  
@@ -463,103 +423,96 @@ diff --git a/hal/sandbox/SandboxHal.cpp b/hal/sandbox/SandboxHal.cpp
      Unused << SendNotifyScreenConfigurationChange(aScreenConfiguration);
    }
  
-   virtual mozilla::ipc::IPCResult
--  RecvAdjustSystemClock(const int64_t &aDeltaMilliseconds) override
--  {
+-  virtual mozilla::ipc::IPCResult RecvAdjustSystemClock(
+-      const int64_t& aDeltaMilliseconds) override {
 -    hal::AdjustSystemClock(aDeltaMilliseconds);
 -    return IPC_OK();
 -  }
 -
--  virtual mozilla::ipc::IPCResult
--  RecvEnableSystemClockChangeNotifications() override
--  {
+-  virtual mozilla::ipc::IPCResult RecvEnableSystemClockChangeNotifications()
+-      override {
 -    hal::RegisterSystemClockChangeObserver(this);
 -    return IPC_OK();
 -  }
 -
--  virtual mozilla::ipc::IPCResult
--  RecvDisableSystemClockChangeNotifications() override
--  {
+-  virtual mozilla::ipc::IPCResult RecvDisableSystemClockChangeNotifications()
+-      override {
 -    hal::UnregisterSystemClockChangeObserver(this);
 -    return IPC_OK();
 -  }
 -
--  virtual mozilla::ipc::IPCResult
--  RecvEnableSystemTimezoneChangeNotifications() override
--  {
+-  virtual mozilla::ipc::IPCResult RecvEnableSystemTimezoneChangeNotifications()
+-      override {
 -    hal::RegisterSystemTimezoneChangeObserver(this);
 -    return IPC_OK();
 -  }
 -
--  virtual mozilla::ipc::IPCResult
--  RecvDisableSystemTimezoneChangeNotifications() override
--  {
+-  virtual mozilla::ipc::IPCResult RecvDisableSystemTimezoneChangeNotifications()
+-      override {
 -    hal::UnregisterSystemTimezoneChangeObserver(this);
 -    return IPC_OK();
 -  }
 -
--  virtual mozilla::ipc::IPCResult
-   RecvEnableSensorNotifications(const SensorType &aSensor) override {
+   virtual mozilla::ipc::IPCResult RecvEnableSensorNotifications(
+       const SensorType& aSensor) override {
      // We currently allow any content to register device-sensor
      // listeners.
      hal::RegisterSensorObserver(aSensor, this);
      return IPC_OK();
    }
  
-   virtual mozilla::ipc::IPCResult
-@@ -477,26 +408,16 @@ public:
+@@ -382,25 +328,16 @@ class HalParent : public PHalParent,
+       const nsString& aTopic, WakeLockInformation* aWakeLockInfo) override {
      hal::GetWakeLockInfo(aTopic, aWakeLockInfo);
      return IPC_OK();
    }
  
-   void Notify(const WakeLockInformation& aWakeLockInfo) override
-   {
+   void Notify(const WakeLockInformation& aWakeLockInfo) override {
      Unused << SendNotifyWakeLockChange(aWakeLockInfo);
    }
 -
--  void Notify(const int64_t& aClockDeltaMS) override
--  {
+-  void Notify(const int64_t& aClockDeltaMS) override {
 -    Unused << SendNotifySystemClockChange(aClockDeltaMS);
 -  }
 -
--  void Notify(const SystemTimezoneChangeInformation& aSystemTimezoneChangeInfo) override
--  {
+-  void Notify(const SystemTimezoneChangeInformation& aSystemTimezoneChangeInfo)
+-      override {
 -    Unused << SendNotifySystemTimezoneChange(aSystemTimezoneChangeInfo);
 -  }
  };
  
  class HalChild : public PHalChild {
- public:
-   virtual void
-   ActorDestroy(ActorDestroyReason aWhy) override
-   {
+  public:
+   virtual void ActorDestroy(ActorDestroyReason aWhy) override {
      sHalChildDestroyed = true;
-@@ -523,29 +444,16 @@ public:
+   }
+ 
+@@ -425,29 +362,16 @@ class HalChild : public PHalChild {
      return IPC_OK();
    }
  
-   virtual mozilla::ipc::IPCResult
-   RecvNotifyScreenConfigurationChange(const ScreenConfiguration& aScreenConfiguration) override {
+   virtual mozilla::ipc::IPCResult RecvNotifyScreenConfigurationChange(
+       const ScreenConfiguration& aScreenConfiguration) override {
      hal::NotifyScreenConfigurationChange(aScreenConfiguration);
      return IPC_OK();
    }
 -
--  virtual mozilla::ipc::IPCResult
--  RecvNotifySystemClockChange(const int64_t& aClockDeltaMS) override {
+-  virtual mozilla::ipc::IPCResult RecvNotifySystemClockChange(
+-      const int64_t& aClockDeltaMS) override {
 -    hal::NotifySystemClockChange(aClockDeltaMS);
 -    return IPC_OK();
 -  }
 -
--  virtual mozilla::ipc::IPCResult
--  RecvNotifySystemTimezoneChange(
--    const SystemTimezoneChangeInformation& aSystemTimezoneChangeInfo) override {
+-  virtual mozilla::ipc::IPCResult RecvNotifySystemTimezoneChange(
+-      const SystemTimezoneChangeInformation& aSystemTimezoneChangeInfo)
+-      override {
 -    hal::NotifySystemTimezoneChange(aSystemTimezoneChangeInfo);
 -    return IPC_OK();
 -  }
  };
  
- mozilla::ipc::IPCResult
- HalChild::RecvNotifySensorChange(const hal::SensorData &aSensorData) {
+ mozilla::ipc::IPCResult HalChild::RecvNotifySensorChange(
+     const hal::SensorData& aSensorData) {
    hal::NotifySensorChange(aSensorData);
  
    return IPC_OK();

+ 20 - 23
comm-esr60/mozilla-esr60/patches/1477678-63a1.patch → rel-257/mozilla-esr60/patches/1477678-63a1.patch

@@ -1,8 +1,8 @@
 # HG changeset patch
-# User Emilio Cobos Alvarez <emilio@crisal.io>
+# User Emilio Cobos Álvarez <emilio@crisal.io>
 # Date 1532351184 0
 # Node ID cee6f792620d5953257bf8f866472ee296e83d94
-# Parent  87b7d3219005c8f17dd329966e21464b244e4261
+# Parent  f9ad9e72ad513dfaf7d35581e80c6303dd8afdc1
 Bug 1477678 - Remove useless Compositor::SetDispAcquireFence. r=kats
 
 Differential Revision: https://phabricator.services.mozilla.com/D2295
@@ -10,32 +10,29 @@ Differential Revision: https://phabricator.services.mozilla.com/D2295
 diff --git a/gfx/layers/Compositor.cpp b/gfx/layers/Compositor.cpp
 --- a/gfx/layers/Compositor.cpp
 +++ b/gfx/layers/Compositor.cpp
-@@ -612,21 +612,16 @@ Compositor::SetInvalid()
+@@ -519,18 +519,16 @@ gfx::IntRect Compositor::ComputeBackdrop
+   return ComputeBackdropCopyRect(boundingBox, aClipRect, aTransform,
+                                  aOutTransform, aOutLayerQuad);
  }
  
- bool
- Compositor::IsValid() const
- {
-   return !!mParent;
- }
+ void Compositor::SetInvalid() { mParent = nullptr; }
+ 
+ bool Compositor::IsValid() const { return !!mParent; }
  
--void
--Compositor::SetDispAcquireFence(Layer* aLayer)
--{
--}
+-void Compositor::SetDispAcquireFence(Layer* aLayer) {}
 -
- bool
- Compositor::NotifyNotUsedAfterComposition(TextureHost* aTextureHost)
- {
-   if (IsDestroyed() || AsBasicCompositor()) {
-     return false;
+ void Compositor::UnlockAfterComposition(TextureHost* aTexture) {
+   TextureSourceProvider::UnlockAfterComposition(aTexture);
+ 
+   // If this is being called after we shutdown the compositor, we must finish
+   // read unlocking now to prevent a cycle.
+   if (IsDestroyed()) {
+     ReadUnlockTextures();
    }
-   return TextureSourceProvider::NotifyNotUsedAfterComposition(aTextureHost);
- }
 diff --git a/gfx/layers/Compositor.h b/gfx/layers/Compositor.h
 --- a/gfx/layers/Compositor.h
 +++ b/gfx/layers/Compositor.h
-@@ -414,18 +414,16 @@ public:
+@@ -392,18 +392,16 @@ class Compositor : public TextureSourceP
     * Flush the current frame to the screen and tidy up.
     *
     * Derived class overriding this should call Compositor::EndFrame.
@@ -51,13 +48,13 @@ diff --git a/gfx/layers/Compositor.h b/gfx/layers/Compositor.h
     */
    virtual bool SupportsPartialTextureUpdate() = 0;
  
-   void SetDiagnosticTypes(DiagnosticTypes aDiagnostics)
-   {
+   void SetDiagnosticTypes(DiagnosticTypes aDiagnostics) {
      mDiagnosticTypes = aDiagnostics;
+   }
 diff --git a/gfx/layers/composite/LayerManagerComposite.cpp b/gfx/layers/composite/LayerManagerComposite.cpp
 --- a/gfx/layers/composite/LayerManagerComposite.cpp
 +++ b/gfx/layers/composite/LayerManagerComposite.cpp
-@@ -992,19 +992,16 @@ LayerManagerComposite::Render(const nsIn
+@@ -948,19 +948,16 @@ void LayerManagerComposite::Render(const
  
    // Debugging
    RenderDebugOverlay(actualBounds);

File diff suppressed because it is too large
+ 230 - 258
rel-257/mozilla-esr60/patches/1488401-64a1.patch


+ 544 - 0
rel-257/mozilla-esr60/patches/1502747-65a1.patch

@@ -0,0 +1,544 @@
+# HG changeset patch
+# User Ehsan Akhgari <ehsan@mozilla.com>
+# Date 1540885735 0
+# Node ID 60129b9fe3f652601b1fdbe0d3bc2786f0ca4105
+# Parent  307d45ba0b837b15c12d1a06e831c173f9bd62a3
+Bug 1502747 - Remove nsIContentPermissionType.access and all of its supporting code r=snorp,baku
+
+This field was originally added for the b2g-only DeviceStorage API,
+and isn't used for anything else right now.
+
+This reverts the remaining parts of bug 1043136 and bug 1043136
+as well as some support code for mobile.
+
+Differential Revision: https://phabricator.services.mozilla.com/D10014
+
+diff --git a/dom/base/nsContentPermissionHelper.cpp b/dom/base/nsContentPermissionHelper.cpp
+--- a/dom/base/nsContentPermissionHelper.cpp
++++ b/dom/base/nsContentPermissionHelper.cpp
+@@ -190,38 +190,31 @@ bool ContentPermissionRequestParent::IsB
+   // It's unsafe to send out any message now.
+   ContentParent* contentParent = static_cast<ContentParent*>(Manager());
+   return !contentParent->IsAlive();
+ }
+ 
+ NS_IMPL_ISUPPORTS(ContentPermissionType, nsIContentPermissionType)
+ 
+ ContentPermissionType::ContentPermissionType(
+-    const nsACString& aType, const nsACString& aAccess,
++    const nsACString& aType,
+     const nsTArray<nsString>& aOptions) {
+   mType = aType;
+-  mAccess = aAccess;
+   mOptions = aOptions;
+ }
+ 
+ ContentPermissionType::~ContentPermissionType() {}
+ 
+ NS_IMETHODIMP
+ ContentPermissionType::GetType(nsACString& aType) {
+   aType = mType;
+   return NS_OK;
+ }
+ 
+ NS_IMETHODIMP
+-ContentPermissionType::GetAccess(nsACString& aAccess) {
+-  aAccess = mAccess;
+-  return NS_OK;
+-}
+-
+-NS_IMETHODIMP
+ ContentPermissionType::GetOptions(nsIArray** aOptions) {
+   NS_ENSURE_ARG_POINTER(aOptions);
+ 
+   *aOptions = nullptr;
+ 
+   nsresult rv;
+   nsCOMPtr<nsIMutableArray> options =
+       do_CreateInstance(NS_ARRAY_CONTRACTID, &rv);
+@@ -246,32 +239,30 @@ ContentPermissionType::GetOptions(nsIArr
+ 
+ // nsContentPermissionUtils
+ 
+ /* static */ uint32_t nsContentPermissionUtils::ConvertPermissionRequestToArray(
+     nsTArray<PermissionRequest>& aSrcArray, nsIMutableArray* aDesArray) {
+   uint32_t len = aSrcArray.Length();
+   for (uint32_t i = 0; i < len; i++) {
+     RefPtr<ContentPermissionType> cpt = new ContentPermissionType(
+-        aSrcArray[i].type(), aSrcArray[i].access(), aSrcArray[i].options());
++        aSrcArray[i].type(), aSrcArray[i].options());
+     aDesArray->AppendElement(cpt);
+   }
+   return len;
+ }
+ 
+ /* static */ uint32_t nsContentPermissionUtils::ConvertArrayToPermissionRequest(
+     nsIArray* aSrcArray, nsTArray<PermissionRequest>& aDesArray) {
+   uint32_t len = 0;
+   aSrcArray->GetLength(&len);
+   for (uint32_t i = 0; i < len; i++) {
+     nsCOMPtr<nsIContentPermissionType> cpt = do_QueryElementAt(aSrcArray, i);
+     nsAutoCString type;
+-    nsAutoCString access;
+     cpt->GetType(type);
+-    cpt->GetAccess(access);
+ 
+     nsCOMPtr<nsIArray> optionArray;
+     cpt->GetOptions(getter_AddRefs(optionArray));
+     uint32_t optionsLength = 0;
+     if (optionArray) {
+       optionArray->GetLength(&optionsLength);
+     }
+     nsTArray<nsString> options;
+@@ -280,17 +271,17 @@ ContentPermissionType::GetOptions(nsIArr
+           do_QueryElementAt(optionArray, j);
+       if (isupportsString) {
+         nsString option;
+         isupportsString->GetData(option);
+         options.AppendElement(option);
+       }
+     }
+ 
+-    aDesArray.AppendElement(PermissionRequest(type, access, options));
++    aDesArray.AppendElement(PermissionRequest(type, options));
+   }
+   return len;
+ }
+ 
+ static std::map<PContentPermissionRequestParent*, TabId>&
+ ContentPermissionRequestParentMap() {
+   MOZ_ASSERT(NS_IsMainThread());
+   static std::map<PContentPermissionRequestParent*, TabId>
+@@ -302,21 +293,21 @@ static std::map<PContentPermissionReques
+ ContentPermissionRequestChildMap() {
+   MOZ_ASSERT(NS_IsMainThread());
+   static std::map<PContentPermissionRequestChild*, TabId>
+       sPermissionRequestChildMap;
+   return sPermissionRequestChildMap;
+ }
+ 
+ /* static */ nsresult nsContentPermissionUtils::CreatePermissionArray(
+-    const nsACString& aType, const nsACString& aAccess,
++    const nsACString& aType,
+     const nsTArray<nsString>& aOptions, nsIArray** aTypesArray) {
+   nsCOMPtr<nsIMutableArray> types = do_CreateInstance(NS_ARRAY_CONTRACTID);
+   RefPtr<ContentPermissionType> permType =
+-      new ContentPermissionType(aType, aAccess, aOptions);
++      new ContentPermissionType(aType, aOptions);
+   types->AppendElement(permType);
+   types.forget(aTypesArray);
+ 
+   return NS_OK;
+ }
+ 
+ /* static */ PContentPermissionRequestParent*
+ nsContentPermissionUtils::CreateContentPermissionRequestParent(
+diff --git a/dom/base/nsContentPermissionHelper.h b/dom/base/nsContentPermissionHelper.h
+--- a/dom/base/nsContentPermissionHelper.h
++++ b/dom/base/nsContentPermissionHelper.h
+@@ -41,37 +41,35 @@ class PermissionRequest;
+ class ContentPermissionRequestParent;
+ class PContentPermissionRequestParent;
+ 
+ class ContentPermissionType : public nsIContentPermissionType {
+  public:
+   NS_DECL_ISUPPORTS
+   NS_DECL_NSICONTENTPERMISSIONTYPE
+ 
+-  ContentPermissionType(const nsACString& aType, const nsACString& aAccess,
++  ContentPermissionType(const nsACString& aType,
+                         const nsTArray<nsString>& aOptions);
+ 
+  protected:
+   virtual ~ContentPermissionType();
+ 
+   nsCString mType;
+-  nsCString mAccess;
+   nsTArray<nsString> mOptions;
+ };
+ 
+ class nsContentPermissionUtils {
+  public:
+   static uint32_t ConvertPermissionRequestToArray(
+       nsTArray<PermissionRequest>& aSrcArray, nsIMutableArray* aDesArray);
+ 
+   static uint32_t ConvertArrayToPermissionRequest(
+       nsIArray* aSrcArray, nsTArray<PermissionRequest>& aDesArray);
+ 
+   static nsresult CreatePermissionArray(const nsACString& aType,
+-                                        const nsACString& aAccess,
+                                         const nsTArray<nsString>& aOptions,
+                                         nsIArray** aTypesArray);
+ 
+   static PContentPermissionRequestParent* CreateContentPermissionRequestParent(
+       const nsTArray<PermissionRequest>& aRequests, Element* aElement,
+       const IPC::Principal& aPrincipal, const bool aIsHandlingUserInput,
+       const TabId& aTabId);
+ 
+diff --git a/dom/geolocation/nsGeolocation.cpp b/dom/geolocation/nsGeolocation.cpp
+--- a/dom/geolocation/nsGeolocation.cpp
++++ b/dom/geolocation/nsGeolocation.cpp
+@@ -334,17 +334,17 @@ nsGeolocationRequest::GetPrincipal(nsIPr
+ 
+   return NS_OK;
+ }
+ 
+ NS_IMETHODIMP
+ nsGeolocationRequest::GetTypes(nsIArray** aTypes) {
+   nsTArray<nsString> emptyOptions;
+   return nsContentPermissionUtils::CreatePermissionArray(
+-      NS_LITERAL_CSTRING("geolocation"), NS_LITERAL_CSTRING("unused"),
++      NS_LITERAL_CSTRING("geolocation"),
+       emptyOptions, aTypes);
+ }
+ 
+ NS_IMETHODIMP
+ nsGeolocationRequest::GetWindow(mozIDOMWindow** aRequestingWindow) {
+   NS_ENSURE_ARG_POINTER(aRequestingWindow);
+ 
+   nsCOMPtr<nsPIDOMWindowInner> window = do_QueryReferent(mLocator->GetOwner());
+diff --git a/dom/interfaces/base/nsIContentPermissionPrompt.idl b/dom/interfaces/base/nsIContentPermissionPrompt.idl
+--- a/dom/interfaces/base/nsIContentPermissionPrompt.idl
++++ b/dom/interfaces/base/nsIContentPermissionPrompt.idl
+@@ -16,22 +16,16 @@ interface nsIArray;
+ interface nsIContentPermissionType : nsISupports {
+   /**
+    *  The type of the permission request, such as
+    *  "geolocation".
+    */
+   readonly attribute ACString type;
+ 
+   /**
+-   *  The access of the permission request, such as
+-   *  "read".
+-   */
+-  readonly attribute ACString access;
+-
+-  /**
+    * The array of available options.
+    */
+   readonly attribute nsIArray options; // ["choice1", "choice2"]
+ };
+ 
+ /**
+  *  Interface provides the callback type.
+  */
+diff --git a/dom/ipc/PContentPermission.ipdlh b/dom/ipc/PContentPermission.ipdlh
+--- a/dom/ipc/PContentPermission.ipdlh
++++ b/dom/ipc/PContentPermission.ipdlh
+@@ -2,17 +2,16 @@
+  * 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/. */
+ 
+ namespace mozilla {
+ namespace dom {
+ 
+ struct PermissionRequest {
+   nsCString type;
+-  nsCString access;
+   nsString[] options;
+ };
+ 
+ struct PermissionChoice {
+   nsCString type;
+   nsString choice;
+ };
+ 
+diff --git a/dom/midi/MIDIPermissionRequest.cpp b/dom/midi/MIDIPermissionRequest.cpp
+--- a/dom/midi/MIDIPermissionRequest.cpp
++++ b/dom/midi/MIDIPermissionRequest.cpp
+@@ -59,17 +59,17 @@ MIDIPermissionRequest::GetRequester(
+ NS_IMETHODIMP
+ MIDIPermissionRequest::GetTypes(nsIArray** aTypes) {
+   NS_ENSURE_ARG_POINTER(aTypes);
+   nsTArray<nsString> options;
+   if (mNeedsSysex) {
+     options.AppendElement(NS_LITERAL_STRING("sysex"));
+   }
+   return nsContentPermissionUtils::CreatePermissionArray(
+-      NS_LITERAL_CSTRING("midi"), NS_LITERAL_CSTRING("unused"), options,
++      NS_LITERAL_CSTRING("midi"), options,
+       aTypes);
+ }
+ 
+ NS_IMETHODIMP
+ MIDIPermissionRequest::GetPrincipal(nsIPrincipal** aRequestingPrincipal) {
+   NS_ENSURE_ARG_POINTER(aRequestingPrincipal);
+   NS_IF_ADDREF(*aRequestingPrincipal = mPrincipal);
+   return NS_OK;
+diff --git a/dom/notification/Notification.cpp b/dom/notification/Notification.cpp
+--- a/dom/notification/Notification.cpp
++++ b/dom/notification/Notification.cpp
+@@ -583,17 +583,17 @@ nsresult NotificationPermissionRequest::
+   mPromise->MaybeResolve(mPermission);
+   return rv;
+ }
+ 
+ NS_IMETHODIMP
+ NotificationPermissionRequest::GetTypes(nsIArray** aTypes) {
+   nsTArray<nsString> emptyOptions;
+   return nsContentPermissionUtils::CreatePermissionArray(
+-      NS_LITERAL_CSTRING("desktop-notification"), NS_LITERAL_CSTRING("unused"),
++      NS_LITERAL_CSTRING("desktop-notification"),
+       emptyOptions, aTypes);
+ }
+ 
+ NS_IMPL_ISUPPORTS(NotificationTelemetryService, nsIObserver)
+ 
+ NotificationTelemetryService::NotificationTelemetryService()
+     : mDNDRecorded(false) {}
+ 
+diff --git a/dom/push/Push.js b/dom/push/Push.js
+--- a/dom/push/Push.js
++++ b/dom/push/Push.js
+@@ -175,17 +175,16 @@ Push.prototype = {
+     } catch (e) {}
+     return permission;
+   },
+ 
+   _requestPermission: function(allowCallback, cancelCallback) {
+     // Create an array with a single nsIContentPermissionType element.
+     let type = {
+       type: "desktop-notification",
+-      access: null,
+       options: [],
+       QueryInterface: XPCOMUtils.generateQI([Ci.nsIContentPermissionType]),
+     };
+     let typeArray = Cc["@mozilla.org/array;1"].createInstance(Ci.nsIMutableArray);
+     typeArray.appendElement(type);
+ 
+     // create a nsIContentPermissionRequest
+     let request = {
+diff --git a/dom/quota/StorageManager.cpp b/dom/quota/StorageManager.cpp
+--- a/dom/quota/StorageManager.cpp
++++ b/dom/quota/StorageManager.cpp
+@@ -730,17 +730,17 @@ PersistentStoragePermissionRequest::GetR
+ 
+ NS_IMETHODIMP
+ PersistentStoragePermissionRequest::GetTypes(nsIArray** aTypes) {
+   MOZ_ASSERT(aTypes);
+ 
+   nsTArray<nsString> emptyOptions;
+ 
+   return nsContentPermissionUtils::CreatePermissionArray(
+-      NS_LITERAL_CSTRING("persistent-storage"), NS_LITERAL_CSTRING("unused"),
++      NS_LITERAL_CSTRING("persistent-storage"),
+       emptyOptions, aTypes);
+ }
+ 
+ /*******************************************************************************
+  * StorageManager
+  ******************************************************************************/
+ 
+ StorageManager::StorageManager(nsIGlobalObject* aGlobal) : mOwner(aGlobal) {
+diff --git a/mobile/android/components/ContentPermissionPrompt.js b/mobile/android/components/ContentPermissionPrompt.js
+--- a/mobile/android/components/ContentPermissionPrompt.js
++++ b/mobile/android/components/ContentPermissionPrompt.js
+@@ -12,42 +12,36 @@ ChromeUtils.defineModuleGetter(this, "Do
+                                "resource://gre/modules/Prompt.jsm");
+ 
+ const kEntities = {
+   "contacts": "contacts",
+   "desktop-notification": "desktopNotification2",
+   "geolocation": "geolocation",
+ };
+ 
+-// For these types, prompt for permission if action is unknown.
+-const PROMPT_FOR_UNKNOWN = [
+-  "desktop-notification",
+-  "geolocation",
+-];
+-
+ function ContentPermissionPrompt() {}
+ 
+ ContentPermissionPrompt.prototype = {
+   classID: Components.ID("{C6E8C44D-9F39-4AF7-BCC0-76E38A8310F5}"),
+ 
+   QueryInterface: XPCOMUtils.generateQI([Ci.nsIContentPermissionPrompt]),
+ 
+-  handleExistingPermission: function handleExistingPermission(request, type, denyUnknown, callback) {
++  handleExistingPermission: function handleExistingPermission(request, type, isApp, callback) {
+     let result = Services.perms.testExactPermissionFromPrincipal(request.principal, type);
+     if (result == Ci.nsIPermissionManager.ALLOW_ACTION) {
+       callback(/* allow */ true);
+       return true;
+     }
+ 
+     if (result == Ci.nsIPermissionManager.DENY_ACTION) {
+       callback(/* allow */ false);
+       return true;
+     }
+ 
+-    if (denyUnknown && result == Ci.nsIPermissionManager.UNKNOWN_ACTION) {
++    if (isApp && result == Ci.nsIPermissionManager.UNKNOWN_ACTION) {
+       callback(/* allow */ false);
+       return true;
+     }
+ 
+     return false;
+   },
+ 
+   getChromeWindow: function getChromeWindow(aWindow) {
+@@ -92,45 +86,42 @@ ContentPermissionPrompt.prototype = {
+             (granted ? request.allow : request.cancel)();
+           });
+         return;
+       }
+       request.allow();
+     };
+ 
+     // Returns true if the request was handled
+-    let access = (perm.access && perm.access !== "unused") ?
+-                 (perm.type + "-" + perm.access) : perm.type;
+-    if (this.handleExistingPermission(request, access,
+-          /* denyUnknown */ isApp || !PROMPT_FOR_UNKNOWN.includes(perm.type), callback)) {
++    if (this.handleExistingPermission(request, perm.type, isApp, callback)) {
+        return;
+     }
+ 
+     let browserBundle = Services.strings.createBundle("chrome://browser/locale/browser.properties");
+     let entityName = kEntities[perm.type];
+ 
+     let buttons = [{
+       label: browserBundle.GetStringFromName(entityName + ".dontAllow"),
+       callback: function(aChecked) {
+         // If the user checked "Don't ask again" or this is a desktopNotification, make a permanent exception
+         if (aChecked || entityName == "desktopNotification2")
+-          Services.perms.addFromPrincipal(request.principal, access, Ci.nsIPermissionManager.DENY_ACTION);
++          Services.perms.addFromPrincipal(request.principal, perm.type, Ci.nsIPermissionManager.DENY_ACTION);
+ 
+         callback(/* allow */ false);
+       }
+     },
+     {
+       label: browserBundle.GetStringFromName(entityName + ".allow"),
+       callback: function(aChecked) {
+         // If the user checked "Don't ask again" or this is a desktopNotification, make a permanent exception
+         if (aChecked || entityName == "desktopNotification2") {
+-          Services.perms.addFromPrincipal(request.principal, access, Ci.nsIPermissionManager.ALLOW_ACTION);
++          Services.perms.addFromPrincipal(request.principal, perm.type, Ci.nsIPermissionManager.ALLOW_ACTION);
+         } else if (isApp) {
+           // Otherwise allow the permission for the current session if the request comes from an app
+-          Services.perms.addFromPrincipal(request.principal, access, Ci.nsIPermissionManager.ALLOW_ACTION, Ci.nsIPermissionManager.EXPIRE_SESSION);
++          Services.perms.addFromPrincipal(request.principal, perm.type, Ci.nsIPermissionManager.ALLOW_ACTION, Ci.nsIPermissionManager.EXPIRE_SESSION);
+         }
+ 
+         callback(/* allow */ true);
+       },
+       positive: true
+     }];
+ 
+     let chromeWin = this.getChromeForRequest(request);
+diff --git a/mobile/android/components/geckoview/GeckoViewPermission.js b/mobile/android/components/geckoview/GeckoViewPermission.js
+--- a/mobile/android/components/geckoview/GeckoViewPermission.js
++++ b/mobile/android/components/geckoview/GeckoViewPermission.js
+@@ -181,17 +181,16 @@ GeckoViewPermission.prototype = {
+ 
+     let perm = types.queryElementAt(0, Ci.nsIContentPermissionType);
+     let dispatcher = GeckoViewUtils.getDispatcherForWindow(
+         aRequest.window ? aRequest.window : aRequest.element.ownerGlobal);
+     dispatcher.sendRequestForResult({
+         type: "GeckoView:ContentPermission",
+         uri: aRequest.principal.URI.displaySpec,
+         perm: perm.type,
+-        access: perm.access !== "unused" ? perm.access : null,
+     }).then(granted => {
+       if (!granted) {
+         return false;
+       }
+       // Ask for app permission after asking for content permission.
+       if (perm.type === "geolocation") {
+         return this.getAppPermissions(dispatcher, [PERM_ACCESS_FINE_LOCATION]);
+       }
+diff --git a/mobile/android/geckoview/src/androidTest/java/org/mozilla/geckoview/test/util/Callbacks.kt b/mobile/android/geckoview/src/androidTest/java/org/mozilla/geckoview/test/util/Callbacks.kt
+--- a/mobile/android/geckoview/src/androidTest/java/org/mozilla/geckoview/test/util/Callbacks.kt
++++ b/mobile/android/geckoview/src/androidTest/java/org/mozilla/geckoview/test/util/Callbacks.kt
+@@ -49,17 +49,17 @@ class Callbacks private constructor() {
+         }
+     }
+ 
+     interface PermissionDelegate : GeckoSession.PermissionDelegate {
+         override fun onAndroidPermissionsRequest(session: GeckoSession, permissions: Array<out String>, callback: GeckoSession.PermissionDelegate.Callback) {
+             callback.reject()
+         }
+ 
+-        override fun onContentPermissionRequest(session: GeckoSession, uri: String, type: Int, access: String, callback: GeckoSession.PermissionDelegate.Callback) {
++        override fun onContentPermissionRequest(session: GeckoSession, uri: String, type: Int, callback: GeckoSession.PermissionDelegate.Callback) {
+             callback.reject()
+         }
+ 
+         override fun onMediaPermissionRequest(session: GeckoSession, uri: String, video: Array<out GeckoSession.PermissionDelegate.MediaSource>, audio: Array<out GeckoSession.PermissionDelegate.MediaSource>, callback: GeckoSession.PermissionDelegate.MediaCallback) {
+             callback.reject()
+         }
+     }
+ 
+diff --git a/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java b/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java
+--- a/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java
++++ b/mobile/android/geckoview/src/main/java/org/mozilla/geckoview/GeckoSession.java
+@@ -285,18 +285,17 @@ public class GeckoSession extends LayerS
+                         type = PermissionDelegate.PERMISSION_GEOLOCATION;
+                     } else if ("desktop_notification".equals(typeString)) {
+                         type = PermissionDelegate.PERMISSION_DESKTOP_NOTIFICATION;
+                     } else {
+                         throw new IllegalArgumentException("Unknown permission request: " + typeString);
+                     }
+                     delegate.onContentPermissionRequest(
+                             GeckoSession.this, message.getString("uri"),
+-                            type, message.getString("access"),
+-                            new PermissionCallback(typeString, callback));
++                            type, new PermissionCallback(typeString, callback));
+                 } else if ("GeckoView:MediaPermission".equals(event)) {
+                     GeckoBundle[] videoBundles = message.getBundleArray("video");
+                     GeckoBundle[] audioBundles = message.getBundleArray("audio");
+                     PermissionDelegate.MediaSource[] videos = null;
+                     PermissionDelegate.MediaSource[] audios = null;
+ 
+                     if (videoBundles != null) {
+                         videos = new PermissionDelegate.MediaSource[videoBundles.length];
+@@ -2096,21 +2095,20 @@ public class GeckoSession extends LayerS
+         /**
+          * Request content permission.
+          *
+          * @param session GeckoSession instance requesting the permission.
+          * @param uri The URI of the content requesting the permission.
+          * @param type The type of the requested permission; possible values are,
+          *             PERMISSION_GEOLOCATION
+          *             PERMISSION_DESKTOP_NOTIFICATION
+-         * @param access Not used.
+          * @param callback Callback interface.
+          */
+-        void onContentPermissionRequest(GeckoSession session, String uri, int type,
+-                                      String access, Callback callback);
++        void onContentPermissionRequest(GeckoSession session, String uri,
++                                        int type, Callback callback);
+ 
+         class MediaSource {
+             /**
+              * The media source is a camera.
+              */
+             public static final int SOURCE_CAMERA = 0;
+ 
+             /**
+diff --git a/mobile/android/geckoview_example/src/main/java/org/mozilla/geckoview_example/GeckoViewActivity.java b/mobile/android/geckoview_example/src/main/java/org/mozilla/geckoview_example/GeckoViewActivity.java
+--- a/mobile/android/geckoview_example/src/main/java/org/mozilla/geckoview_example/GeckoViewActivity.java
++++ b/mobile/android/geckoview_example/src/main/java/org/mozilla/geckoview_example/GeckoViewActivity.java
+@@ -258,18 +258,17 @@ public class GeckoViewActivity extends A
+                 return;
+             }
+             mCallback = callback;
+             requestPermissions(permissions, androidPermissionRequestCode);
+         }
+ 
+         @Override
+         public void onContentPermissionRequest(final GeckoSession session, final String uri,
+-                                             final int type, final String access,
+-                                             final Callback callback) {
++                                             final int type, final Callback callback) {
+             final int resId;
+             if (PERMISSION_GEOLOCATION == type) {
+                 resId = R.string.request_geolocation;
+             } else if (PERMISSION_DESKTOP_NOTIFICATION == type) {
+                 resId = R.string.request_notification;
+             } else {
+                 Log.w(LOGTAG, "Unknown permission: " + type);
+                 callback.reject();

+ 13 - 0
rel-257/mozilla-esr60/patches/series

@@ -7,3 +7,16 @@ NOBUG-0c5f5c2e2a86-64a1.patch
 1336712-65a1.patch
 1437128-61a1.patch
 1445969-61a1.patch
+1446809-1-61a1.patch
+1446809-2-61a1.patch
+1446809-3-61a1.patch
+1446809-4-61a1.patch
+1446809-5-61a1.patch
+1446809-6-61a1.patch
+1446809-7-61a1.patch
+1446809-8-61a1.patch
+1446809-9-61a1.patch
+1477678-63a1.patch
+1447873-61a1.patch
+1488401-64a1.patch
+1502747-65a1.patch

Some files were not shown because too many files changed in this diff