summaryrefslogtreecommitdiff
path: root/dev-util/umockdev/files/umockdev-0.19.1-tests-ioctl.patch
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2025-03-19 23:31:16 +0000
committerSam James <sam@gentoo.org>2025-03-19 23:49:46 +0000
commit3269008fd531f61c35c0bffbb6656381673a7855 (patch)
treee8ae83aac39d8ebaee047d630ceb46ed5159a853 /dev-util/umockdev/files/umockdev-0.19.1-tests-ioctl.patch
parent9d0da91be6acdcced435c878543f065fbd61fd25 (diff)
downloadgentoo-3269008fd531f61c35c0bffbb6656381673a7855.tar.gz
gentoo-3269008fd531f61c35c0bffbb6656381673a7855.tar.bz2
gentoo-3269008fd531f61c35c0bffbb6656381673a7855.zip
dev-util/umockdev: add 0.19.1
Bug: https://bugs.gentoo.org/935573 Closes: https://bugs.gentoo.org/847850 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-util/umockdev/files/umockdev-0.19.1-tests-ioctl.patch')
-rw-r--r--dev-util/umockdev/files/umockdev-0.19.1-tests-ioctl.patch28
1 files changed, 28 insertions, 0 deletions
diff --git a/dev-util/umockdev/files/umockdev-0.19.1-tests-ioctl.patch b/dev-util/umockdev/files/umockdev-0.19.1-tests-ioctl.patch
new file mode 100644
index 000000000000..d374af96c5bb
--- /dev/null
+++ b/dev-util/umockdev/files/umockdev-0.19.1-tests-ioctl.patch
@@ -0,0 +1,28 @@
+https://github.com/martinpitt/umockdev/commit/9e68706bfbc4185c7b65550fdc94dd14a6e5ffd6
+
+From 9e68706bfbc4185c7b65550fdc94dd14a6e5ffd6 Mon Sep 17 00:00:00 2001
+From: Martin Pitt <martin@piware.de>
+Date: Sun, 5 Jan 2025 14:58:52 +0100
+Subject: [PATCH] tests: Fix ioctl data type
+
+The `0xdeadbeef` constant in Vala is implicitly an int64. On 32 bit
+big-endian architectures like powerpc this argument vanishes during its
+interpretation through varargs and long (i.e. gets shifted to the second
+argument, which we never look at). Explicitly make it an int.
+--- a/tests/test-umockdev-vala.vala
++++ b/tests/test-umockdev-vala.vala
+@@ -1140,10 +1140,11 @@ E: SUBSYSTEM=test
+ int fd = Posix.open ("/dev/test", Posix.O_RDWR, 0);
+ assert_cmpint (fd, CompareOperator.GE, 0);
+
+- assert_cmpint (Posix.ioctl (fd, 1, 0xdeadbeef), CompareOperator.EQ, (int) 0xdeadbeef);
++ int value = (int) 0xdeadbeef;
++ assert_cmpint (Posix.ioctl (fd, 1, value), CompareOperator.EQ, value);
+ assert_cmpint (Posix.errno, CompareOperator.EQ, 0);
+
+- assert_cmpint (Posix.ioctl (fd, 2, 0xdeadbeef), CompareOperator.EQ, -1);
++ assert_cmpint (Posix.ioctl (fd, 2, value), CompareOperator.EQ, -1);
+ assert_cmpint (Posix.errno, CompareOperator.EQ, Posix.ENOMEM);
+
+ assert_cmpint (Posix.ioctl (fd, 3, &ioctl_target), CompareOperator.EQ, 0);
+