summaryrefslogtreecommitdiff
path: root/mozilla-bmo1716707-swizzle.patch
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2024-08-05 03:13:08 +0000
committerCoprDistGit <infra@openeuler.org>2024-08-05 03:13:08 +0000
commitee8469dbc1fa88e770dc42b9e36c16096db86c5c (patch)
treea3408825c9e3c0e6f300598835ea1f5d761bb5b4 /mozilla-bmo1716707-swizzle.patch
parentc598e711556fc5cd73a0a78ba7c6c3c71b28b074 (diff)
automatic import of firefoxopeneuler24.03_LTS
Diffstat (limited to 'mozilla-bmo1716707-swizzle.patch')
-rw-r--r--mozilla-bmo1716707-swizzle.patch34
1 files changed, 34 insertions, 0 deletions
diff --git a/mozilla-bmo1716707-swizzle.patch b/mozilla-bmo1716707-swizzle.patch
new file mode 100644
index 0000000..bb37560
--- /dev/null
+++ b/mozilla-bmo1716707-swizzle.patch
@@ -0,0 +1,34 @@
+# HG changeset patch
+# User M. Sirringhaus <msirringhaus@suse.de>
+# Date 1645518286 -3600
+# Tue Feb 22 09:24:46 2022 +0100
+# Node ID 494640792b4677f6462e95b90a54a4e22aeb738b
+# Parent 81832d035e101471dcf52dd91de287268add7a91
+imported patch one_swizzle_to_rule_them_all.patch
+
+Index: firefox-102.0/gfx/webrender_bindings/RenderCompositorSWGL.cpp
+===================================================================
+--- firefox-102.0.orig/gfx/webrender_bindings/RenderCompositorSWGL.cpp
++++ firefox-102.0/gfx/webrender_bindings/RenderCompositorSWGL.cpp
+@@ -7,6 +7,7 @@
+ #include "RenderCompositorSWGL.h"
+
+ #include "mozilla/gfx/Logging.h"
++#include "mozilla/gfx/Swizzle.h"
+ #include "mozilla/widget/CompositorWidget.h"
+
+ #ifdef MOZ_WIDGET_GTK
+@@ -235,6 +237,13 @@ void RenderCompositorSWGL::CommitMappedB
+ }
+ mDT->Flush();
+
++#if MOZ_BIG_ENDIAN()
++ // One swizzle to rule them all.
++ gfx::SwizzleData(mMappedData, mMappedStride, gfx::SurfaceFormat::B8G8R8A8,
++ mMappedData, mMappedStride, gfx::SurfaceFormat::A8R8G8B8,
++ mDT->GetSize());
++#endif
++
+ // Done with the DT. Hand it back to the widget and clear out any trace of it.
+ mWidget->EndRemoteDrawingInRegion(mDT, mDirtyRegion);
+ mDirtyRegion.SetEmpty();