MFH: r466271
www/waterfox: apply some FF60 fixes Approved by: ports-secteam blanket
This commit is contained in:
parent
70b37b7a07
commit
5865e24e27
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/branches/2018Q2/; revision=466274
@ -2,7 +2,7 @@
|
||||
|
||||
PORTNAME= waterfox
|
||||
DISTVERSION= 56.1.0
|
||||
PORTREVISION= 3
|
||||
PORTREVISION= 4
|
||||
CATEGORIES= www ipv6
|
||||
|
||||
MAINTAINER= jbeich@FreeBSD.org
|
||||
|
82
www/waterfox/files/patch-bug1372107
Normal file
82
www/waterfox/files/patch-bug1372107
Normal file
@ -0,0 +1,82 @@
|
||||
commit 4224928879ee
|
||||
Author: Michael Kaply <mozilla@kaply.com>
|
||||
Date: Wed Mar 14 13:30:53 2018 -0500
|
||||
|
||||
Bug 1372107 - Allow browser to be started despite Autoconfig errors. r=florian, a=ritu
|
||||
|
||||
MozReview-Commit-ID: of8cdUMedC
|
||||
|
||||
--HG--
|
||||
extra : rebase_source : d58039b1f2e268c7a0af77e9a0680f759f203d99
|
||||
extra : source : dad020b0bb45903972c2856cc3a2968f39a27635
|
||||
---
|
||||
extensions/pref/autoconfig/src/nsReadConfig.cpp | 27 +++++++++++++------------
|
||||
1 file changed, 14 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git extensions/pref/autoconfig/src/nsReadConfig.cpp extensions/pref/autoconfig/src/nsReadConfig.cpp
|
||||
index a87b5b2c1bd4..8939fdc268eb 100644
|
||||
--- extensions/pref/autoconfig/src/nsReadConfig.cpp
|
||||
+++ extensions/pref/autoconfig/src/nsReadConfig.cpp
|
||||
@@ -36,35 +36,35 @@ extern nsresult CentralizedAdminPrefManagerInit();
|
||||
extern nsresult CentralizedAdminPrefManagerFinish();
|
||||
|
||||
|
||||
-static void DisplayError(void)
|
||||
+static nsresult DisplayError(void)
|
||||
{
|
||||
nsresult rv;
|
||||
|
||||
nsCOMPtr<nsIPromptService> promptService = do_GetService("@mozilla.org/embedcomp/prompt-service;1");
|
||||
if (!promptService)
|
||||
- return;
|
||||
+ return NS_ERROR_FAILURE;
|
||||
|
||||
nsCOMPtr<nsIStringBundleService> bundleService = do_GetService(NS_STRINGBUNDLE_CONTRACTID);
|
||||
if (!bundleService)
|
||||
- return;
|
||||
+ return NS_ERROR_FAILURE;
|
||||
|
||||
nsCOMPtr<nsIStringBundle> bundle;
|
||||
bundleService->CreateBundle("chrome://autoconfig/locale/autoconfig.properties",
|
||||
getter_AddRefs(bundle));
|
||||
if (!bundle)
|
||||
- return;
|
||||
+ return NS_ERROR_FAILURE;
|
||||
|
||||
nsXPIDLString title;
|
||||
rv = bundle->GetStringFromName("readConfigTitle", getter_Copies(title));
|
||||
if (NS_FAILED(rv))
|
||||
- return;
|
||||
+ return rv;
|
||||
|
||||
nsXPIDLString err;
|
||||
rv = bundle->GetStringFromName("readConfigMsg", getter_Copies(err));
|
||||
if (NS_FAILED(rv))
|
||||
- return;
|
||||
+ return rv;
|
||||
|
||||
- promptService->Alert(nullptr, title.get(), err.get());
|
||||
+ return promptService->Alert(nullptr, title.get(), err.get());
|
||||
}
|
||||
|
||||
// nsISupports Implementation
|
||||
@@ -101,12 +101,13 @@ NS_IMETHODIMP nsReadConfig::Observe(nsISupports *aSubj
|
||||
if (!nsCRT::strcmp(aTopic, NS_PREFSERVICE_READ_TOPIC_ID)) {
|
||||
rv = readConfigFile();
|
||||
if (NS_FAILED(rv)) {
|
||||
- DisplayError();
|
||||
-
|
||||
- nsCOMPtr<nsIAppStartup> appStartup =
|
||||
- do_GetService(NS_APPSTARTUP_CONTRACTID);
|
||||
- if (appStartup)
|
||||
- appStartup->Quit(nsIAppStartup::eAttemptQuit);
|
||||
+ rv = DisplayError();
|
||||
+ if (NS_FAILED(rv)) {
|
||||
+ nsCOMPtr<nsIAppStartup> appStartup =
|
||||
+ do_GetService(NS_APPSTARTUP_CONTRACTID);
|
||||
+ if (appStartup)
|
||||
+ appStartup->Quit(nsIAppStartup::eAttemptQuit);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
return rv;
|
28
www/waterfox/files/patch-bug1418009
Normal file
28
www/waterfox/files/patch-bug1418009
Normal file
@ -0,0 +1,28 @@
|
||||
commit 068a8c4feb56
|
||||
Author: Oriol Brufau <oriol-bugzilla@hotmail.com>
|
||||
Date: Fri Mar 16 16:58:36 2018 +0100
|
||||
|
||||
Bug 1418009 - Avoid speculative connections on prematurely inserted lazy tabs. r=dao, a=RyanVM
|
||||
|
||||
MozReview-Commit-ID: 3T8PLBLEGNt
|
||||
|
||||
--HG--
|
||||
extra : rebase_source : 5839f1ede2a3d939e8bad02520979a8911f69553
|
||||
extra : source : 6d67283033868a54d89a936ba5e336d9bad5c79c
|
||||
---
|
||||
browser/components/sessionstore/SessionStore.jsm | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git browser/components/sessionstore/SessionStore.jsm browser/components/sessionstore/SessionStore.jsm
|
||||
index dee998cbe7eb..88de8a64f0fc 100644
|
||||
--- browser/components/sessionstore/SessionStore.jsm
|
||||
+++ browser/components/sessionstore/SessionStore.jsm
|
||||
@@ -3547,7 +3547,7 @@ var SessionStoreInternal = {
|
||||
* a tab to speculatively connect on mouse hover.
|
||||
*/
|
||||
speculativeConnectOnTabHover(tab) {
|
||||
- if (this._restore_on_demand && !tab.__SS_connectionPrepared && tab.hasAttribute("pending")) {
|
||||
+ if (tab.__SS_lazyData && !tab.__SS_connectionPrepared) {
|
||||
let url = this.getLazyTabValue(tab, "url");
|
||||
let prepared = this.prepareConnectionToHost(url);
|
||||
// This is used to test if a connection has been made beforehand.
|
27
www/waterfox/files/patch-bug1436809
Normal file
27
www/waterfox/files/patch-bug1436809
Normal file
@ -0,0 +1,27 @@
|
||||
commit 91f4336a7ddc
|
||||
Author: Michal Novotny <michal.novotny@gmail.com>
|
||||
Date: Mon Apr 2 12:59:18 2018 -0400
|
||||
|
||||
Bug 1436809 - Check that stream message was converted to string correctly. r=valentin, a=abillings
|
||||
|
||||
--HG--
|
||||
extra : rebase_source : c81e8000cd7e41d8928e6ee0c6eb6ee823debc23
|
||||
extra : source : b229809d17ff18263becfad6f9777c9ab0165279
|
||||
---
|
||||
netwerk/protocol/websocket/WebSocketChannel.cpp | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git netwerk/protocol/websocket/WebSocketChannel.cpp netwerk/protocol/websocket/WebSocketChannel.cpp
|
||||
index a08655f95d8c..a17b2f382d23 100644
|
||||
--- netwerk/protocol/websocket/WebSocketChannel.cpp
|
||||
+++ netwerk/protocol/websocket/WebSocketChannel.cpp
|
||||
@@ -1052,6 +1052,9 @@ public:
|
||||
nsresult rv = NS_ReadInputStreamToString(mMsg.pStream, *temp, mLength);
|
||||
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
+ if (temp->Length() != mLength) {
|
||||
+ return NS_ERROR_UNEXPECTED;
|
||||
+ }
|
||||
|
||||
mMsg.pStream->Close();
|
||||
mMsg.pStream->Release();
|
160
www/waterfox/files/patch-bug1447131
Normal file
160
www/waterfox/files/patch-bug1447131
Normal file
@ -0,0 +1,160 @@
|
||||
commit c6116093dd45
|
||||
Author: Botond Ballo <botond@mozilla.com>
|
||||
Date: Wed Mar 28 14:22:30 2018 -0400
|
||||
|
||||
Bug 1447131 - Handle backface-visibility:hidden in compositor hit testing. r=kats a=RyanVM
|
||||
|
||||
MozReview-Commit-ID: EZhhSk3EZAL
|
||||
|
||||
--HG--
|
||||
extra : source : e4b8a1682e6c4587649bcfbf5dab4b2ccdf4c741
|
||||
---
|
||||
gfx/layers/LayerMetricsWrapper.h | 7 +++++++
|
||||
gfx/layers/apz/src/APZCTreeManager.cpp | 9 ++++++---
|
||||
gfx/layers/apz/src/HitTestingTreeNode.cpp | 12 +++++++++++-
|
||||
gfx/layers/apz/src/HitTestingTreeNode.h | 11 ++++++++++-
|
||||
gfx/layers/wr/WebRenderScrollDataWrapper.h | 7 +++++++
|
||||
5 files changed, 41 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git gfx/layers/LayerMetricsWrapper.h gfx/layers/LayerMetricsWrapper.h
|
||||
index baffde611220..dcf9fdc02b21 100644
|
||||
--- gfx/layers/LayerMetricsWrapper.h
|
||||
+++ gfx/layers/LayerMetricsWrapper.h
|
||||
@@ -446,6 +446,13 @@ public:
|
||||
return mLayer->GetFixedPositionScrollContainerId();
|
||||
}
|
||||
|
||||
+ bool IsBackfaceHidden() const
|
||||
+ {
|
||||
+ MOZ_ASSERT(IsValid());
|
||||
+
|
||||
+ return mLayer->IsBackfaceHidden();
|
||||
+ }
|
||||
+
|
||||
// Expose an opaque pointer to the layer. Mostly used for printf
|
||||
// purposes. This is not intended to be a general-purpose accessor
|
||||
// for the underlying layer.
|
||||
diff --git gfx/layers/apz/src/APZCTreeManager.cpp gfx/layers/apz/src/APZCTreeManager.cpp
|
||||
index 9c66d22a41fe..7f82c3cee0a8 100644
|
||||
--- gfx/layers/apz/src/APZCTreeManager.cpp
|
||||
+++ gfx/layers/apz/src/APZCTreeManager.cpp
|
||||
@@ -835,7 +835,8 @@ APZCTreeManager::PrepareNodeForLayer(const ScrollNode& aLayer,
|
||||
(!parentHasPerspective && aLayer.GetClipRect())
|
||||
? Some(ParentLayerIntRegion(*aLayer.GetClipRect()))
|
||||
: Nothing(),
|
||||
- GetEventRegionsOverride(aParent, aLayer));
|
||||
+ GetEventRegionsOverride(aParent, aLayer),
|
||||
+ aLayer.IsBackfaceHidden());
|
||||
node->SetScrollbarData(aLayer.GetScrollbarTargetContainerId(),
|
||||
aLayer.GetScrollbarAnimationId(),
|
||||
aLayer.GetScrollThumbData(),
|
||||
@@ -948,7 +949,8 @@ APZCTreeManager::PrepareNodeForLayer(const ScrollNode& aLayer,
|
||||
aLayer.GetVisibleRegion(),
|
||||
aLayer.GetTransformTyped(),
|
||||
clipRegion,
|
||||
- GetEventRegionsOverride(aParent, aLayer));
|
||||
+ GetEventRegionsOverride(aParent, aLayer),
|
||||
+ aLayer.IsBackfaceHidden());
|
||||
apzc->SetAncestorTransform(aAncestorTransform);
|
||||
|
||||
PrintAPZCInfo(aLayer, apzc);
|
||||
@@ -1047,7 +1049,8 @@ APZCTreeManager::PrepareNodeForLayer(const ScrollNode& aLayer,
|
||||
aLayer.GetVisibleRegion(),
|
||||
aLayer.GetTransformTyped(),
|
||||
clipRegion,
|
||||
- GetEventRegionsOverride(aParent, aLayer));
|
||||
+ GetEventRegionsOverride(aParent, aLayer),
|
||||
+ aLayer.IsBackfaceHidden());
|
||||
}
|
||||
|
||||
// Note: if layer properties must be propagated to nodes, RecvUpdate in
|
||||
diff --git gfx/layers/apz/src/HitTestingTreeNode.cpp gfx/layers/apz/src/HitTestingTreeNode.cpp
|
||||
index f16758e72ec6..ee1fce927c0d 100644
|
||||
--- gfx/layers/apz/src/HitTestingTreeNode.cpp
|
||||
+++ gfx/layers/apz/src/HitTestingTreeNode.cpp
|
||||
@@ -31,6 +31,7 @@ HitTestingTreeNode::HitTestingTreeNode(AsyncPanZoomController* aApzc,
|
||||
, mScrollViewId(FrameMetrics::NULL_SCROLL_ID)
|
||||
, mScrollbarAnimationId(0)
|
||||
, mFixedPosTarget(FrameMetrics::NULL_SCROLL_ID)
|
||||
+ , mIsBackfaceHidden(false)
|
||||
, mOverride(EventRegionsOverride::NoOverride)
|
||||
{
|
||||
if (mIsPrimaryApzcHolder) {
|
||||
@@ -263,13 +264,15 @@ HitTestingTreeNode::SetHitTestData(const EventRegions& aRegions,
|
||||
const LayerIntRegion& aVisibleRegion,
|
||||
const CSSTransformMatrix& aTransform,
|
||||
const Maybe<ParentLayerIntRegion>& aClipRegion,
|
||||
- const EventRegionsOverride& aOverride)
|
||||
+ const EventRegionsOverride& aOverride,
|
||||
+ bool aIsBackfaceHidden)
|
||||
{
|
||||
mEventRegions = aRegions;
|
||||
mVisibleRegion = aVisibleRegion;
|
||||
mTransform = aTransform;
|
||||
mClipRegion = aClipRegion;
|
||||
mOverride = aOverride;
|
||||
+ mIsBackfaceHidden = aIsBackfaceHidden;
|
||||
}
|
||||
|
||||
bool
|
||||
@@ -287,6 +290,13 @@ HitTestingTreeNode::HitTest(const LayerPoint& aPoint) const
|
||||
}
|
||||
|
||||
auto point = LayerIntPoint::Round(aPoint);
|
||||
+
|
||||
+ // If the layer's backface is showing and it's hidden, don't hit it.
|
||||
+ // This matches the behavior of main-thread hit testing in
|
||||
+ // nsDisplayTransform::HitTest().
|
||||
+ if (mIsBackfaceHidden) {
|
||||
+ return HitTestResult::HitNothing;
|
||||
+ }
|
||||
|
||||
// test against event regions in Layer coordinate space
|
||||
if (!mEventRegions.mHitRegion.Contains(point.x, point.y)) {
|
||||
diff --git gfx/layers/apz/src/HitTestingTreeNode.h gfx/layers/apz/src/HitTestingTreeNode.h
|
||||
index 50e04e515652..aef703fd23b5 100644
|
||||
--- gfx/layers/apz/src/HitTestingTreeNode.h
|
||||
+++ gfx/layers/apz/src/HitTestingTreeNode.h
|
||||
@@ -89,7 +89,8 @@ public:
|
||||
const LayerIntRegion& aVisibleRegion,
|
||||
const CSSTransformMatrix& aTransform,
|
||||
const Maybe<ParentLayerIntRegion>& aClipRegion,
|
||||
- const EventRegionsOverride& aOverride);
|
||||
+ const EventRegionsOverride& aOverride,
|
||||
+ bool aIsBackfaceHidden);
|
||||
bool IsOutsideClip(const ParentLayerPoint& aPoint) const;
|
||||
|
||||
/* Scrollbar info */
|
||||
@@ -172,6 +173,14 @@ private:
|
||||
* transforms. */
|
||||
CSSTransformMatrix mTransform;
|
||||
|
||||
+ /* Whether layer L is backface-visibility:hidden, and its backface is
|
||||
+ * currently visible. It's true that the latter depends on the layer's
|
||||
+ * shadow transform, but the sorts of changes APZ makes to the shadow
|
||||
+ * transform shouldn't change the backface from hidden to visible or
|
||||
+ * vice versa, so it's sufficient to record this at hit test tree
|
||||
+ * building time. */
|
||||
+ bool mIsBackfaceHidden;
|
||||
+
|
||||
/* This is clip rect for L that we wish to use for hit-testing purposes. Note
|
||||
* that this may not be exactly the same as the clip rect on layer L because
|
||||
* of the touch-sensitive region provided by the GeckoContentController, or
|
||||
diff --git gfx/layers/wr/WebRenderScrollDataWrapper.h gfx/layers/wr/WebRenderScrollDataWrapper.h
|
||||
index 2e20bbdcdb8f..64d5319e10ff 100644
|
||||
--- gfx/layers/wr/WebRenderScrollDataWrapper.h
|
||||
+++ gfx/layers/wr/WebRenderScrollDataWrapper.h
|
||||
@@ -315,6 +315,13 @@ public:
|
||||
return mLayer->GetFixedPositionScrollContainerId();
|
||||
}
|
||||
|
||||
+ bool IsBackfaceHidden() const
|
||||
+ {
|
||||
+ // This is only used by APZCTM hit testing, and WR does its own
|
||||
+ // hit testing, so no need to implement this.
|
||||
+ return false;
|
||||
+ }
|
||||
+
|
||||
const void* GetLayer() const
|
||||
{
|
||||
MOZ_ASSERT(IsValid());
|
Loading…
Reference in New Issue
Block a user