* Fixed: Various security fixes. - Mozilla Firefox ESR 128.7.0 https://www.mozilla.org/security/advisories/mfsa2025-09 MFSA 2025-09 (boo#1236539) * CVE-2025-1009 (bmo#1936613) Use-after-free in XSLT * CVE-2025-1010 (bmo#1936982) Use-after-free in Custom Highlight * CVE-2025-1011 (bmo#1936454) A bug in WebAssembly code generation could result in a crash * CVE-2025-1012 (bmo#1939710) Use-after-free during concurrent delazification * CVE-2024-11704 (bmo#1899402) Potential double-free vulnerability in PKCS#7 decryption handling * CVE-2025-1013 (bmo#1932555) Potential opening of private browsing tabs in normal browsing windows * CVE-2025-1014 (bmo#1940804) Certificate length was not properly checked * CVE-2025-1016 (bmo#1936601, bmo#1936844, bmo#1937694, bmo#1938469, bmo#1939583, bmo#1940994) Memory safety bugs fixed in Firefox 135, Thunderbird 135, Firefox ESR 115.20, Firefox ESR 128.7, Thunderbird 115.20, and Thunderbird 128.7 * CVE-2025-1017 (bmo#1926256, bmo#1935471, bmo#1935984) Memory safety bugs fixed in Firefox 135, Thunderbird 135, Firefox ESR 128.7, and Thunderbird 128.7 OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/firefox-esr?expand=0&rev=34
27 lines
1.1 KiB
Diff
27 lines
1.1 KiB
Diff
# HG changeset patch
|
|
# Parent 3de59fe1b8708c01e134ce698c4232b8a854f617
|
|
Problem: webGL sites are displayed in the wrong color (usually blue-ish)
|
|
Solution: Problem is with skia once again. Output of webgl seems endian-correct, but skia only
|
|
knows how to deal with little endian.
|
|
So we swizzle the output of webgl after reading it from readpixels()
|
|
Note: This does not fix all webGL sites, but is a step in the right direction
|
|
|
|
Index: firefox-115.0/gfx/gl/GLContext.h
|
|
===================================================================
|
|
--- firefox-115.0.orig/gfx/gl/GLContext.h
|
|
+++ firefox-115.0/gfx/gl/GLContext.h
|
|
@@ -1560,6 +1560,13 @@ class GLContext : public GenericAtomicRe
|
|
BEFORE_GL_CALL;
|
|
mSymbols.fReadPixels(x, y, width, height, format, type, pixels);
|
|
OnSyncCall();
|
|
+#if MOZ_BIG_ENDIAN()
|
|
+ uint8_t* itr = (uint8_t*)pixels;
|
|
+ for (GLsizei i = 0; i < width * height; i++) {
|
|
+ NativeEndian::swapToLittleEndianInPlace((uint32_t*)itr, 1);
|
|
+ itr += 4;
|
|
+ }
|
|
+#endif
|
|
AFTER_GL_CALL;
|
|
mHeavyGLCallsSinceLastFlush = true;
|
|
}
|