From d1125a5bd7e675d1f2a3c4e395f4300b1afd8cea Mon Sep 17 00:00:00 2001 From: wolfbeast Date: Mon, 22 Jul 2019 15:06:15 +0200 Subject: [PATCH 1/7] Remove MOZ_BROWSER_STATUSBAR conditional. This resolves #1194. --- application/palemoon/components/moz.build | 4 +--- application/palemoon/configure.in | 14 -------------- application/palemoon/confvars.sh | 3 --- application/palemoon/themes/linux/jar.mn | 2 -- application/palemoon/themes/osx/jar.mn | 2 -- application/palemoon/themes/windows/jar.mn | 2 -- 6 files changed, 1 insertion(+), 26 deletions(-) diff --git a/application/palemoon/components/moz.build b/application/palemoon/components/moz.build index eb2771c487..48d4552ba3 100644 --- a/application/palemoon/components/moz.build +++ b/application/palemoon/components/moz.build @@ -20,11 +20,9 @@ DIRS += [ 'search', 'sessionstore', 'shell', + 'statusbar', ] -if CONFIG['MOZ_BROWSER_STATUSBAR']: - DIRS += ['statusbar'] - if CONFIG['MOZ_SERVICES_SYNC']: DIRS += ['sync'] diff --git a/application/palemoon/configure.in b/application/palemoon/configure.in index 9d820f6d4f..70ddf66210 100644 --- a/application/palemoon/configure.in +++ b/application/palemoon/configure.in @@ -14,20 +14,6 @@ AC_SUBST(MOZ_PHOENIX_EXTENSIONS) dnl Optional parts of the build. -dnl ======================================================== -dnl = Disable the status bar code -dnl ======================================================== -MOZ_ARG_DISABLE_BOOL(browser-statusbar, -[ --disable-browser-statusbar Disable Browser Status bar], - MOZ_BROWSER_STATUSBAR=, - MOZ_BROWSER_STATUSBAR=1) - -if test -n "$MOZ_BROWSER_STATUSBAR"; then - AC_DEFINE(MOZ_BROWSER_STATUSBAR) -fi - -AC_SUBST(MOZ_BROWSER_STATUSBAR) - dnl ======================================================== dnl = Disable Sync dnl ======================================================== diff --git a/application/palemoon/confvars.sh b/application/palemoon/confvars.sh index 79681f0135..ee8e384120 100644 --- a/application/palemoon/confvars.sh +++ b/application/palemoon/confvars.sh @@ -43,9 +43,6 @@ MC_PALEMOON=1 # Firefox-like browsers MOZ_PHOENIX=1 -# Browser Feature: Status bar Component -MOZ_BROWSER_STATUSBAR=1 - # Lightweight Themes MOZ_PERSONAS=1 diff --git a/application/palemoon/themes/linux/jar.mn b/application/palemoon/themes/linux/jar.mn index a79487c7f4..a7c426bceb 100644 --- a/application/palemoon/themes/linux/jar.mn +++ b/application/palemoon/themes/linux/jar.mn @@ -107,7 +107,6 @@ browser.jar: #endif * skin/classic/browser/preferences/preferences.css (preferences/preferences.css) skin/classic/browser/preferences/applications.css (preferences/applications.css) -#ifdef MOZ_BROWSER_STATUSBAR skin/classic/browser/statusbar/dynamic.css (../shared/statusbar/dynamic.css) * skin/classic/browser/statusbar/overlay.css (statusbar/overlay.css) * skin/classic/browser/statusbar/prefs.css (statusbar/prefs.css) @@ -116,7 +115,6 @@ browser.jar: skin/classic/browser/statusbar/pms24.png (../shared/statusbar/pms24.png) skin/classic/browser/statusbar/throbber-idle.png (../shared/statusbar/throbber-idle.png) skin/classic/browser/statusbar/throbberStatic.png (../shared/statusbar/throbberStatic.png) -#endif skin/classic/browser/tabbrowser/alltabs.png (tabbrowser/alltabs.png) skin/classic/browser/tabbrowser/connecting.png (tabbrowser/connecting.png) skin/classic/browser/tabbrowser/loading.png (tabbrowser/loading.png) diff --git a/application/palemoon/themes/osx/jar.mn b/application/palemoon/themes/osx/jar.mn index c59fb1c725..67339c7cc6 100644 --- a/application/palemoon/themes/osx/jar.mn +++ b/application/palemoon/themes/osx/jar.mn @@ -146,7 +146,6 @@ browser.jar: skin/classic/browser/preferences/saveFile.png (preferences/saveFile.png) * skin/classic/browser/preferences/preferences.css (preferences/preferences.css) skin/classic/browser/preferences/applications.css (preferences/applications.css) -#ifdef MOZ_BROWSER_STATUSBAR skin/classic/browser/statusbar/dynamic.css (../shared/statusbar/dynamic.css) * skin/classic/browser/statusbar/overlay.css (statusbar/overlay.css) * skin/classic/browser/statusbar/prefs.css (statusbar/prefs.css) @@ -155,7 +154,6 @@ browser.jar: skin/classic/browser/statusbar/pms24.png (../shared/statusbar/pms24.png) skin/classic/browser/statusbar/throbber-idle.png (../shared/statusbar/throbber-idle.png) skin/classic/browser/statusbar/throbberStatic.png (../shared/statusbar/throbberStatic.png) -#endif skin/classic/browser/tabbrowser/alltabs.png (tabbrowser/alltabs.png) skin/classic/browser/tabbrowser/alltabs-inverted.png (tabbrowser/alltabs-inverted.png) skin/classic/browser/tabbrowser/newtab.png (tabbrowser/newtab.png) diff --git a/application/palemoon/themes/windows/jar.mn b/application/palemoon/themes/windows/jar.mn index 604466c9f0..4422bb666f 100644 --- a/application/palemoon/themes/windows/jar.mn +++ b/application/palemoon/themes/windows/jar.mn @@ -131,7 +131,6 @@ browser.jar: skin/classic/browser/preferences/saveFile.png (preferences/saveFile.png) * skin/classic/browser/preferences/preferences.css (preferences/preferences.css) skin/classic/browser/preferences/applications.css (preferences/applications.css) -#ifdef MOZ_BROWSER_STATUSBAR skin/classic/browser/statusbar/dynamic.css (../shared/statusbar/dynamic.css) * skin/classic/browser/statusbar/overlay.css (statusbar/overlay.css) * skin/classic/browser/statusbar/prefs.css (statusbar/prefs.css) @@ -140,7 +139,6 @@ browser.jar: skin/classic/browser/statusbar/pms24.png (../shared/statusbar/pms24.png) skin/classic/browser/statusbar/throbber-idle.png (../shared/statusbar/throbber-idle.png) skin/classic/browser/statusbar/throbberStatic.png (../shared/statusbar/throbberStatic.png) -#endif skin/classic/browser/tabbrowser/alltabs.png (tabbrowser/alltabs.png) skin/classic/browser/tabbrowser/alltabs-inverted.png (tabbrowser/alltabs-inverted.png) skin/classic/browser/tabbrowser/newtab.png (tabbrowser/newtab.png) From 1459c396a30580b1d18592eb2e34ca4b664fed19 Mon Sep 17 00:00:00 2001 From: adeshkp Date: Tue, 23 Jul 2019 00:30:15 +0530 Subject: [PATCH 2/7] Fix call to macro `MOZ_ASSERT_UNREACHABLE` Fallout from 227b23606b0401245c9f0b15effd45b876b90260 --- gfx/gl/GLUploadHelpers.cpp | 40 +++++++++++++++++++++++++++++++++++--- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/gfx/gl/GLUploadHelpers.cpp b/gfx/gl/GLUploadHelpers.cpp index 75165eedf7..0bbb61434f 100644 --- a/gfx/gl/GLUploadHelpers.cpp +++ b/gfx/gl/GLUploadHelpers.cpp @@ -161,7 +161,22 @@ TexSubImage2DWithoutUnpackSubimage(GLContext* gl, // isn't supported. We make a copy of the texture data we're using, // such that we're using the whole row of data in the copy. This turns // out to be more efficient than uploading row-by-row; see bug 698197. - unsigned char* newPixels = new (fallible) unsigned char[width*height*pixelsize]; + + // Width and height are never more than 16384. At 16Ki*16Ki, 4Bpp is 1GiB, but + // if we allow 8Bpp (16-bit channels, or higher) here, that's 2GiB+, which would + // overflow on 32-bit. + MOZ_ASSERT(width <= 16384); + MOZ_ASSERT(height <= 16384); + MOZ_ASSERT(pixelsize < 8); + + const auto size = CheckedInt(width) * height * pixelsize; + if (!size.isValid()) { + // This should never happen, but we use a defensive check. + MOZ_ASSERT_UNREACHABLE("Unacceptable size calculated.!"); + return; + } + + unsigned char* newPixels = new (fallible) unsigned char[size.value()]; if (newPixels) { unsigned char* rowDest = newPixels; @@ -286,7 +301,22 @@ TexImage2DHelper(GLContext* gl, GLsizei paddedWidth = RoundUpPow2((uint32_t)width); GLsizei paddedHeight = RoundUpPow2((uint32_t)height); - GLvoid* paddedPixels = new unsigned char[paddedWidth * paddedHeight * pixelsize]; + // Width and height are never more than 16384. At 16Ki*16Ki, 4Bpp + // is 1GiB, but if we allow 8Bpp (or higher) here, that's 2GiB, + // which would overflow on 32-bit. + MOZ_ASSERT(width <= 16384); + MOZ_ASSERT(height <= 16384); + MOZ_ASSERT(pixelsize < 8); + + const auto size = + CheckedInt(paddedWidth) * paddedHeight * pixelsize; + if (!size.isValid()) { + // This should never happen, but we use a defensive check. + MOZ_ASSERT_UNREACHABLE("Unacceptable size calculated.!"); + return; + } + + GLvoid* paddedPixels = new unsigned char[size.value()]; // Pad out texture data to be in a POT sized buffer for uploading to // a POT sized texture @@ -465,13 +495,17 @@ UploadImageDataToTexture(GLContext* gl, surfaceFormat = SurfaceFormat::A8; break; default: - NS_ASSERTION(false, "Unhandled image surface format!"); + MOZ_ASSERT_UNREACHABLE("Unhandled image surface format!"); } if (aOutUploadSize) { *aOutUploadSize = 0; } + if (surfaceFormat == gfx::SurfaceFormat::UNKNOWN) { + return gfx::SurfaceFormat::UNKNOWN; + } + if (aNeedInit || !CanUploadSubTextures(gl)) { // If the texture needs initialized, or we are unable to // upload sub textures, then initialize and upload the entire From 6cd76bd47195a58ef7e7877fa0be293037189ce3 Mon Sep 17 00:00:00 2001 From: wolfbeast Date: Thu, 25 Jul 2019 12:34:59 +0200 Subject: [PATCH 3/7] Update default bookmark icons. --- .../palemoon/locales/generic/profile/bookmarks.html.in | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/application/palemoon/locales/generic/profile/bookmarks.html.in b/application/palemoon/locales/generic/profile/bookmarks.html.in index 96270641ab..90e3adfe9c 100644 --- a/application/palemoon/locales/generic/profile/bookmarks.html.in +++ b/application/palemoon/locales/generic/profile/bookmarks.html.in @@ -11,9 +11,9 @@

@bookmarks_toolbarfolder@

@bookmarks_toolbarfolder_description@

-

Pale Moon -
Pale Moon forum -
F.A.Q. -
Release notes +
Pale Moon +
Pale Moon forum +
F.A.Q. +
Release notes

From 39d3e9f0e27133ba0b05d50f60b0c9b2f5ec25c7 Mon Sep 17 00:00:00 2001 From: wicknix <39230578+wicknix@users.noreply.github.com> Date: Mon, 22 Jul 2019 23:55:50 -0500 Subject: [PATCH 4/7] Add space to MOZ_APP_DISPLAYNAME PaleMoon now becomes Pale Moon --- application/palemoon/branding/official/configure.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/application/palemoon/branding/official/configure.sh b/application/palemoon/branding/official/configure.sh index a9818b4a7d..8943f58195 100644 --- a/application/palemoon/branding/official/configure.sh +++ b/application/palemoon/branding/official/configure.sh @@ -2,5 +2,5 @@ # 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/. -MOZ_APP_DISPLAYNAME=PaleMoon +MOZ_APP_DISPLAYNAME="Pale Moon" # MOZ_UA_BUILDID=20100101 From 5fa279e0bd7e2e6f288ee070886f2a66f5968c9e Mon Sep 17 00:00:00 2001 From: wicknix <39230578+wicknix@users.noreply.github.com> Date: Mon, 22 Jul 2019 23:57:12 -0500 Subject: [PATCH 5/7] Add space to MOZ_APP_DISPLAYNAME NewMoon now becomes New Moon --- application/palemoon/branding/unofficial/configure.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/application/palemoon/branding/unofficial/configure.sh b/application/palemoon/branding/unofficial/configure.sh index 05a1e1b87d..c03b8382af 100644 --- a/application/palemoon/branding/unofficial/configure.sh +++ b/application/palemoon/branding/unofficial/configure.sh @@ -2,4 +2,4 @@ # 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/. -MOZ_APP_DISPLAYNAME=NewMoon +MOZ_APP_DISPLAYNAME="New Moon" From bb119316162402b5ea8c2ecd428705463b782a0a Mon Sep 17 00:00:00 2001 From: wicknix <39230578+wicknix@users.noreply.github.com> Date: Mon, 22 Jul 2019 23:58:18 -0500 Subject: [PATCH 6/7] Add space to MOZ_APP_DISPLAYNAME PaleMoon becomes Pale Moon --- application/palemoon/branding/unstable/configure.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/application/palemoon/branding/unstable/configure.sh b/application/palemoon/branding/unstable/configure.sh index 814133dfa5..8943f58195 100644 --- a/application/palemoon/branding/unstable/configure.sh +++ b/application/palemoon/branding/unstable/configure.sh @@ -2,5 +2,5 @@ # 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/. -MOZ_APP_DISPLAYNAME=Palemoon +MOZ_APP_DISPLAYNAME="Pale Moon" # MOZ_UA_BUILDID=20100101 From 8a3929e776278d03a4a0c134f32ebcc2a5391744 Mon Sep 17 00:00:00 2001 From: wicknix <39230578+wicknix@users.noreply.github.com> Date: Tue, 23 Jul 2019 18:43:03 -0500 Subject: [PATCH 7/7] Add red moon icon to MacOS for unstable builds Replaces grey moon which is supposed to be used for unofficial "New Moon" builds. --- .../palemoon/branding/unstable/firefox.icns | Bin 12079 -> 59809 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/application/palemoon/branding/unstable/firefox.icns b/application/palemoon/branding/unstable/firefox.icns index 117ddb195258602ac6214320942f55ce1af385c8..3df606a0188b360d071187f622ace28b7a023710 100644 GIT binary patch literal 59809 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

Fat!-c_8~8g!utS+gV+M~ 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 J-v+*v{s+LxEp7k+