commit: 3f7db6a36ad6a02fff711cfdeebeffc718d68ab4
Author: Alexander Miller <alex.miller <AT> gmx <DOT> de>
AuthorDate: Sun Mar 31 02:45:25 2024 +0000
Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Thu May 9 13:18:22 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3f7db6a3
x11-misc/rss-glx: Fix if statements partially guarding multistatement macro
Amazingly, this mess didn't cause serious problems; fixing anyway.
Signed-off-by: Alexander Miller <alex.miller <AT> gmx.de>
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
.../files/rss-glx-0.9.1-macro-if-scope.patch | 29 ++++++++++++++++++++++
x11-misc/rss-glx/rss-glx-0.9.1-r4.ebuild | 1 +
2 files changed, 30 insertions(+)
diff --git a/x11-misc/rss-glx/files/rss-glx-0.9.1-macro-if-scope.patch
b/x11-misc/rss-glx/files/rss-glx-0.9.1-macro-if-scope.patch
new file mode 100644
index 000000000000..5044aae31918
--- /dev/null
+++ b/x11-misc/rss-glx/files/rss-glx-0.9.1-macro-if-scope.patch
@@ -0,0 +1,29 @@
+Fix multistatement macro partially guarded by if
+
+The code still works correctly by chance, but it performs redundant
+calls to BZ2_bzBuffToBuffDecompress() and it's a horrible mess.
+
+--- a/src/matrixview.c
++++ b/src/matrixview.c
+@@ -248,8 +248,9 @@ void loadNextImage ()
+ GetExceptionInfo (&exception);
+ #endif
+
+- if (!pics)
++ if (!pics) {
+ LOAD_TEXTURE (pics, cpics, cpics_compressedsize,
cpics_size)
++ }
+
+ if ((text_x != 90) || (text_y != 70)) {
+ if (!pic)
+@@ -279,8 +280,9 @@ void loadNextImage ()
+ DestroyImage (image);
+ DestroyImage (scaled_image);
+ } else {
+- if (!pics)
++ if (!pics) {
+ LOAD_TEXTURE (pics, cpics,
cpics_compressedsize, cpics_size)
++ }
+
+ pic = (unsigned char *)(pics + ((random () & 15) *
(text_x * text_y)));
+ }
diff --git a/x11-misc/rss-glx/rss-glx-0.9.1-r4.ebuild
b/x11-misc/rss-glx/rss-glx-0.9.1-r4.ebuild
index 0bbbaa643911..a38286dc8927 100644
--- a/x11-misc/rss-glx/rss-glx-0.9.1-r4.ebuild
+++ b/x11-misc/rss-glx/rss-glx-0.9.1-r4.ebuild
@@ -49,6 +49,7 @@ PATCHES=(
"${FILESDIR}"/${P}-bashism.patch
"${FILESDIR}"/${P}-strict-aliasing.patch
"${FILESDIR}"/${P}-variable-mismatch.patch
+ "${FILESDIR}"/${P}-macro-if-scope.patch
)
src_prepare() {