Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package ddcutil for openSUSE:Factory checked 
in at 2026-11-08 19:21:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ddcutil (Old)
 and      /work/SRC/openSUSE:Factory/.ddcutil.new.3759290 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ddcutil"

Sun Nov  8 19:21:11 2026 rev:23 rq:1395803 version:3.0.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/ddcutil/ddcutil.changes  2026-08-26 
19:51:49.416715842 +0200
+++ /work/SRC/openSUSE:Factory/.ddcutil.new.3759290/ddcutil.changes     
2026-11-08 19:21:16.982136735 +0100
@@ -1,0 +2,27 @@
+Fri Nov  6 09:43:35 UTC 2026 - Martin Pluskal <[email protected]>
+
+- Fix i586 %check failure in test_string_util: fail str_to_long()
+  on strtol ERANGE overflow instead of clamping to LONG_MAX/MIN,
+  which made str_to_int() wrongly succeed for out-of-range input
+  on ILP32 (ddcutil-strtol-erange.patch).
+
+-------------------------------------------------------------------
+Tue Oct 20 19:11:00 UTC 2026 - Martin Pluskal <[email protected]>
+
+- Update to version 3.0.2 (3.0.0 and 3.0.1 had severe
+  reliability and performance issues, skip them):
+  * Reworked display connect/disconnect handling for
+    performance and reliability; Plasma users should update
+  * 3.0.1: reverted to serial i2c examination (parallel checks
+    crashed AMD Navi / Plasma wouldn't start)
+  * 3.0.2: dropped the single multi-message EDID ioctl (severe
+    slowdowns without EDID, possible amdgpu crash); built-in
+    Valve Index HMD ignore list
+  * The i2c GROUP udev rule now ships commented out per
+    upstream packaging-policy note (boo#1277442)
+  * No SONAME change (libddcutil.so.5)
+  * Align BuildRequires floors with configure.ac: glib-2.0 >= 2.40,
+    jansson >= 2.0, libdrm >= 2.4.67, libusb-1.0 >= 1.0.15
+- Drop Group: tags
+
+-------------------------------------------------------------------

Old:
----
  v2.2.7.tar.gz

New:
----
  ddcutil-strtol-erange.patch
  v3.0.2.tar.gz

----------(New B)----------
  New:  which made str_to_int() wrongly succeed for out-of-range input
  on ILP32 (ddcutil-strtol-erange.patch).
----------(New E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ddcutil.spec ++++++
--- /var/tmp/diff_new_pack.xErhHn/_old  2026-11-08 19:21:18.317191963 +0100
+++ /var/tmp/diff_new_pack.xErhHn/_new  2026-11-08 19:21:18.322192170 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package ddcutil
 #
-# Copyright (c) 2025 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 # Copyright (c) 2025 Andreas Stieger <[email protected]>
 #
 # All modifications and additions to the file contributed by third parties
@@ -18,13 +18,14 @@
 
 
 Name:           ddcutil
-Version:        2.2.7
+Version:        3.0.2
 Release:        0
 Summary:        Utility to query and update monitor settings
 License:        GPL-2.0-or-later
-Group:          System/GUI/Other
 URL:            https://github.com/rockowitz/ddcutil
 Source:         
https://github.com/rockowitz/ddcutil/archive/refs/tags/v%{version}.tar.gz
+# PATCH-FIX-OPENSUSE ddcutil-strtol-erange.patch -- fail str_to_long() on 
strtol ERANGE instead of clamping, fixing str_to_int() on ILP32 (i586 %check 
failure)
+Patch0:         ddcutil-strtol-erange.patch
 
 BuildRequires:  autoconf
 BuildRequires:  automake
@@ -35,13 +36,13 @@
 BuildRequires:  libtool
 BuildRequires:  pkgconfig
 BuildRequires:  pkgconfig(dbus-1)
-BuildRequires:  pkgconfig(glib-2.0)
-BuildRequires:  pkgconfig(jansson)
+BuildRequires:  pkgconfig(glib-2.0) >= 2.40
+BuildRequires:  pkgconfig(jansson) >= 2.0
 BuildRequires:  pkgconfig(libacl)
-BuildRequires:  pkgconfig(libdrm)
+BuildRequires:  pkgconfig(libdrm) >= 2.4.67
 BuildRequires:  pkgconfig(libkmod)
 BuildRequires:  pkgconfig(libudev)
-BuildRequires:  pkgconfig(libusb-1.0)
+BuildRequires:  pkgconfig(libusb-1.0) >= 1.0.15
 BuildRequires:  pkgconfig(xrandr)
 BuildRequires:  pkgconfig(zlib)
 Recommends:     ddcutil-i2c-udev-rules
@@ -59,7 +60,6 @@
 
 %package -n libddcutil5
 Summary:        Shared library to query and update monitor settings
-Group:          System/Libraries
 Suggests:       ddcutil-i2c-udev-rules
 # libddcutil.so.4 was wrongly packaged as libddcutil3 after the 1.x upgrade
 Conflicts:      libddcutil3 >= 1.0
@@ -73,7 +73,6 @@
 
 %package -n libddcutil-devel
 Summary:        Development files for libddcutil
-Group:          Development/Libraries/C and C++
 Requires:       libddcutil5 = %{version}
 
 %description -n libddcutil-devel
@@ -81,7 +80,6 @@
 
 %package -n ddcutil-i2c-udev-rules
 Summary:        Udev rules to grant logged in users DDC/CI access
-Group:          Hardware/Other
 Requires:       libddcutil5 = %{version}
 Provides:       ddcutil:%{_udevrulesdir}/60-ddcutil.rules
 BuildArch:      noarch

++++++ ddcutil-strtol-erange.patch ++++++
str_to_long() ignored strtol() ERANGE overflow, storing the clamped
LONG_MAX/MIN and reporting success.  On ILP32 (i586) str_to_int() then
wrongly succeeds for out-of-range input such as "9999999999", failing
the unit test that asserts refusal (on LP64 the value fits in long and
the int-narrowing check catches it, so only 32-bit builds break).
Check errno after strtol() and fail on ERANGE.

Index: ddcutil-3.0.2/src/util/string_util.c
===================================================================
--- ddcutil-3.0.2.orig/src/util/string_util.c
+++ ddcutil-3.0.2/src/util/string_util.c
@@ -1119,10 +1119,11 @@
             printf("(%s) work = %s\n", __func__, work);
 
          if (has_digits) {
+            errno = 0;
             long result = strtol(work, &endptr, base); // allow hex
             // printf("(%s) sval=%p, endptr=%p, *endptr=|%c| (0x%02x), 
result=%ld\n",
             //        __func__, sval, endptr, *endptr, *endptr, result);
-            if (*endptr == '\0') {
+            if (*endptr == '\0' && errno != ERANGE) {
                *p_ival = result;
                ok = true;
             }

++++++ v2.2.7.tar.gz -> v3.0.2.tar.gz ++++++
++++ 50774 lines of diff (skipped)

Reply via email to