diff options
-rw-r--r-- | application/palemoon/themes/linux/browser.css | 2 | ||||
-rw-r--r-- | application/palemoon/themes/osx/browser.css | 2 | ||||
-rw-r--r-- | application/palemoon/themes/windows/browser.css | 2 | ||||
-rw-r--r-- | gfx/2d/2D.h | 3 | ||||
-rw-r--r-- | layout/svg/nsSVGMaskFrame.cpp | 3 | ||||
-rw-r--r-- | layout/svg/nsSVGUtils.cpp | 2 |
6 files changed, 9 insertions, 5 deletions
diff --git a/application/palemoon/themes/linux/browser.css b/application/palemoon/themes/linux/browser.css index 933067c2b..01b3f5c9e 100644 --- a/application/palemoon/themes/linux/browser.css +++ b/application/palemoon/themes/linux/browser.css @@ -1608,7 +1608,7 @@ richlistitem[type~="action"][actiontype="switchtab"] > .ac-url-box > .ac-action- } /* When the tab bar is collapsed, show a 1px border in its place. */ -#TabsToolbar[collapsed="true"] { +#TabsToolbar[tabsontop="false"][collapsed="true"] { visibility: visible; height: 1px; border-bottom-width: 1px; diff --git a/application/palemoon/themes/osx/browser.css b/application/palemoon/themes/osx/browser.css index 20e8c5eac..6d0d92015 100644 --- a/application/palemoon/themes/osx/browser.css +++ b/application/palemoon/themes/osx/browser.css @@ -1631,7 +1631,7 @@ richlistitem[type~="action"][actiontype="switchtab"][selected="true"] > .ac-url- } /* When the tab bar is collapsed, show a 1px border in its place. */ -#TabsToolbar[collapsed="true"] { +#TabsToolbar[tabsontop="false"][collapsed="true"] { visibility: visible; height: 1px; border-bottom-width: 1px; diff --git a/application/palemoon/themes/windows/browser.css b/application/palemoon/themes/windows/browser.css index aae36c539..9f32b59cf 100644 --- a/application/palemoon/themes/windows/browser.css +++ b/application/palemoon/themes/windows/browser.css @@ -1844,7 +1844,7 @@ richlistitem[type~="action"][actiontype="switchtab"] > .ac-url-box > .ac-action- } /* When the tab bar is collapsed, show a 1px border in its place. */ -#TabsToolbar[collapsed="true"] { +#TabsToolbar[tabsontop="false"][collapsed="true"] { visibility: visible; height: 1px; border-bottom-width: 1px; diff --git a/gfx/2d/2D.h b/gfx/2d/2D.h index c1fba3463..e2020dc9e 100644 --- a/gfx/2d/2D.h +++ b/gfx/2d/2D.h @@ -488,6 +488,9 @@ public: /** * Returns a DataSourceSurface with the same data as this one, but * guaranteed to have surface->GetType() == SurfaceType::DATA. + * + * The returning surface might be null, because of OOM or gfx device reset. + * The caller needs to do null-check before using it. */ virtual already_AddRefed<DataSourceSurface> GetDataSurface() override; diff --git a/layout/svg/nsSVGMaskFrame.cpp b/layout/svg/nsSVGMaskFrame.cpp index b8e4b32ae..a22833d61 100644 --- a/layout/svg/nsSVGMaskFrame.cpp +++ b/layout/svg/nsSVGMaskFrame.cpp @@ -274,7 +274,8 @@ nsSVGMaskFrame::GetMaskForMaskedFrame(gfxContext* aContext, } RefPtr<DataSourceSurface> maskSurface = maskSnapshot->GetDataSurface(); DataSourceSurface::MappedSurface map; - if (!maskSurface->Map(DataSourceSurface::MapType::READ, &map)) { + if (!maskSurface || + !maskSurface->Map(DataSourceSurface::MapType::READ, &map)) { return nullptr; } diff --git a/layout/svg/nsSVGUtils.cpp b/layout/svg/nsSVGUtils.cpp index 0bded21ff..b8794a05d 100644 --- a/layout/svg/nsSVGUtils.cpp +++ b/layout/svg/nsSVGUtils.cpp @@ -685,7 +685,7 @@ nsSVGUtils::PaintFrameWithEffects(nsIFrame *aFrame, bool isOK = effectProperties.HasNoFilterOrHasValidFilter(); nsSVGClipPathFrame *clipPathFrame = effectProperties.GetClipPathFrame(&isOK); nsSVGMaskFrame *maskFrame = effectProperties.GetFirstMaskFrame(&isOK); - if (!isOK) { + if (!isOK || !maskFrame) { // Some resource is invalid. We shouldn't paint anything. return DrawResult::SUCCESS; } |