Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package hwinfo for openSUSE:Factory checked 
in at 2026-06-03 20:20:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/hwinfo (Old)
 and      /work/SRC/openSUSE:Factory/.hwinfo.new.1937 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "hwinfo"

Wed Jun  3 20:20:41 2026 rev:203 rq:1356766 version:25.4

Changes:
--------
--- /work/SRC/openSUSE:Factory/hwinfo/hwinfo.changes    2026-05-24 
19:34:18.091957662 +0200
+++ /work/SRC/openSUSE:Factory/.hwinfo.new.1937/hwinfo.changes  2026-06-03 
20:20:51.445292962 +0200
@@ -1,0 +2,26 @@
+Tue Jun 2 14:47:54 UTC 2026 - [email protected]
+
+- merge gh#openSUSE/hwinfo#181
+- fix redundant conditions in smbios memory device map
+- 25.4
+
+--------------------------------------------------------------------
+Tue Jun 2 14:46:49 UTC 2026 - [email protected]
+
+- merge gh#openSUSE/hwinfo#182
+- fix memory leaks (bsc#1267348)
+
+--------------------------------------------------------------------
+Tue Jun 2 12:14:20 UTC 2026 - [email protected]
+
+- merge gh#openSUSE/hwinfo#180
+- fix(core): free modinfo_ext instead of modinfo in hd_free_hd_data
+
+--------------------------------------------------------------------
+Tue Jun 2 12:13:32 UTC 2026 - [email protected]
+
+- merge gh#openSUSE/hwinfo#179
+- Fix: fix sizeof in joystick allocation to use struct size instead
+  of pointer size (bsc#1267348)
+
+--------------------------------------------------------------------

Old:
----
  hwinfo-25.3.tar.xz

New:
----
  hwinfo-25.4.tar.xz

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

Other differences:
------------------
++++++ hwinfo.spec ++++++
--- /var/tmp/diff_new_pack.VLWnQZ/_old  2026-06-03 20:20:52.157322499 +0200
+++ /var/tmp/diff_new_pack.VLWnQZ/_new  2026-06-03 20:20:52.177323329 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           hwinfo
-Version:        25.3
+Version:        25.4
 %define lname  libhd%(echo "%version" | perl -pe 's{\\D.*}{}')
 Release:        0
 Summary:        Hardware Library

++++++ hwinfo-25.3.tar.xz -> hwinfo-25.4.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.3/VERSION new/hwinfo-25.4/VERSION
--- old/hwinfo-25.3/VERSION     2026-05-20 17:42:52.000000000 +0200
+++ new/hwinfo-25.4/VERSION     2026-06-02 16:47:54.000000000 +0200
@@ -1 +1 @@
-25.3
+25.4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.3/changelog new/hwinfo-25.4/changelog
--- old/hwinfo-25.3/changelog   2026-05-20 17:42:52.000000000 +0200
+++ new/hwinfo-25.4/changelog   2026-06-02 16:47:54.000000000 +0200
@@ -1,3 +1,14 @@
+2026-06-02:    25.4
+       - merge gh#openSUSE/hwinfo#179
+       - Fix: fix sizeof in joystick allocation to use struct size instead
+         of pointer size (bsc#1267348)
+       - merge gh#openSUSE/hwinfo#180
+       - fix(core): free modinfo_ext instead of modinfo in hd_free_hd_data
+       - merge gh#openSUSE/hwinfo#182
+       - fix memory leaks (bsc#1267348)
+       - merge gh#openSUSE/hwinfo#181
+       - fix redundant conditions in smbios memory device map
+
 2026-05-20:    25.3
        - merge gh#openSUSE/hwinfo#178
        - fix memory leaks in pci and pppoe modules (bsc#1265908)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.3/hwinfo.c new/hwinfo-25.4/hwinfo.c
--- old/hwinfo-25.3/hwinfo.c    2026-05-20 17:42:52.000000000 +0200
+++ new/hwinfo-25.4/hwinfo.c    2026-06-02 16:47:54.000000000 +0200
@@ -981,6 +981,7 @@
   f = fopen(INSTALL_INF, "w");
   if(!f) {
     perror(INSTALL_INF);
+    free_str_list(sl0);
     return 1;
   }
 
@@ -998,6 +999,8 @@
 
   fclose(f);
 
+  free_str_list(sl0);
+
   return 0;
 }
 
@@ -1177,6 +1180,7 @@
   f = fopen(INSTALL_INF, "w");
   if(!f) {
     perror(INSTALL_INF);
+    free_str_list(sl0);
     return 1;
   }
 
@@ -1224,6 +1228,8 @@
 
   fclose(f);
 
+  free_str_list(sl0);
+
   return 0;
 }
 
@@ -1260,7 +1266,7 @@
 
 void dump_packages(hd_data_t *hd_data)
 {
-  str_list_t *sl;
+  str_list_t *sl, *sl_head;
   int i;
 
   hd_data->progress = NULL;
@@ -1273,9 +1279,12 @@
       add_str_list(&sl, strdup(xserver3map[i + 1]));
   }
 
+  sl_head = sl;
   for(; sl; sl = sl->next) {
     printf("%s\n", sl->str);
   }
+
+  free_str_list(sl_head);
 }
 
 
@@ -1332,6 +1341,8 @@
   f = fopen(INSTALL_INF, "w");
   if(!f) {
     perror(INSTALL_INF);
+    free_str_list(sl0);
+    free_str_list(x11packs);
     return 1;
   }
   for(sl = sl0; sl; sl = sl->next) {
@@ -1354,6 +1365,10 @@
   if (pcmcia)
     fprintf(f, "Pcmcia: %d\n", pcmcia);
   fclose(f);
+
+  free_str_list(sl0);
+  free_str_list(x11packs);
+
   return 0;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.3/src/hd/block.c 
new/hwinfo-25.4/src/hd/block.c
--- old/hwinfo-25.3/src/hd/block.c      2026-05-20 17:42:52.000000000 +0200
+++ new/hwinfo-25.4/src/hd/block.c      2026-06-02 16:47:54.000000000 +0200
@@ -182,7 +182,9 @@
       if(!strcmp(bus_name, "nvme-subsystem")) {
         for(sl = read_dir(sf_dev, 'l'); sl; sl = sl->next) {
           if(!strncmp(sl->str, "nvme", 4)) {
-            sf_dev = new_str(hd_read_sysfs_link(sf_dev, sl->str));
+            char *old_sf_dev = sf_dev;
+            sf_dev = new_str(hd_read_sysfs_link(old_sf_dev, sl->str));
+            free_mem(old_sf_dev);
           }
         }
       }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.3/src/hd/cpu.c new/hwinfo-25.4/src/hd/cpu.c
--- old/hwinfo-25.3/src/hd/cpu.c        2026-05-20 17:42:52.000000000 +0200
+++ new/hwinfo-25.4/src/hd/cpu.c        2026-06-02 16:47:54.000000000 +0200
@@ -275,7 +275,7 @@
 
     if(*features) {
       for(t0 = features; (t = strsep(&t0, " ")); ) {
-        add_str_list(&ct->features, new_str(t));
+        add_str_list(&ct->features, t);
       }
     }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.3/src/hd/drm.c new/hwinfo-25.4/src/hd/drm.c
--- old/hwinfo-25.3/src/hd/drm.c        2026-05-20 17:42:52.000000000 +0200
+++ new/hwinfo-25.4/src/hd/drm.c        2026-06-02 16:47:54.000000000 +0200
@@ -1,14 +1,15 @@
-
-
 #include <fcntl.h>
+#include <unistd.h>
 
 #include "hd.h"
 #include "hd_int.h"
 
 int is_kms_active(hd_data_t *hd_data) {
-  int kms = open("/sys/class/drm/card0", O_RDONLY) > 0;
+  int fd = open("/sys/class/drm/card0", O_RDONLY);
+  int kms = fd >= 0;
+  if (fd >= 0) close(fd);
   ADD2LOG("  KMS detected: %d\n", kms);
 
-  return kms; 
+  return kms;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.3/src/hd/hd.c new/hwinfo-25.4/src/hd/hd.c
--- old/hwinfo-25.3/src/hd/hd.c 2026-05-20 17:42:52.000000000 +0200
+++ new/hwinfo-25.4/src/hd/hd.c 2026-06-02 16:47:54.000000000 +0200
@@ -1011,9 +1011,12 @@
   }
   hd_data->modinfo = free_mem(hd_data->modinfo);
   if((p = hd_data->modinfo_ext)) {
-    for(; p->type; p++) free_mem(p->module);
+    for(; p->type; p++) {
+      free_mem(p->module);
+      free_mem(p->alias);
+    }
   }
-  hd_data->modinfo = free_mem(hd_data->modinfo_ext);
+  hd_data->modinfo_ext = free_mem(hd_data->modinfo_ext);
 
   if(hd_data->hddb2[0]) {
     free_mem(hd_data->hddb2[0]->list);
@@ -5994,6 +5997,8 @@
         str_printf(&sf->driver, 0, "nvme_%s", transport);
         sf->device = new_str(hd_sysfs_id(sf_dev));
         ADD2LOG("%16s: %s\n", sf->driver, sf->device);
+
+        free_mem(transport);
       }
     }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.3/src/hd/input.c 
new/hwinfo-25.4/src/hd/input.c
--- old/hwinfo-25.3/src/hd/input.c      2026-05-20 17:42:52.000000000 +0200
+++ new/hwinfo-25.4/src/hd/input.c      2026-06-02 16:47:54.000000000 +0200
@@ -57,7 +57,7 @@
   h->detail = new_mem(sizeof *h->detail);
   h->detail->type = hd_detail_joystick;
 
-  joystick_t *jt = new_mem(sizeof jt);
+  joystick_t *jt = new_mem(sizeof *jt);
   unsigned u;
 
   if(key) {
@@ -406,6 +406,13 @@
     }
   }
 
+  // Free any remaining allocated strings from the last device
+  name = free_mem(name);
+  handlers = free_mem(handlers);
+  key = free_mem(key);
+  rel = free_mem(rel);
+  abso = free_mem(abso);
+
   free_str_list(input);
 
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.3/src/hd/pci.c new/hwinfo-25.4/src/hd/pci.c
--- old/hwinfo-25.3/src/hd/pci.c        2026-05-20 17:42:52.000000000 +0200
+++ new/hwinfo-25.4/src/hd/pci.c        2026-06-02 16:47:54.000000000 +0200
@@ -1577,6 +1577,8 @@
       if(s) add_str_list(&hd->drivers, s);
     }
 
+    free_mem(xen_type);
+    free_mem(xen_node);
     free_mem(sf_dev);
     free_mem(drv);
     free_mem(module);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.3/src/hd/smbios.c 
new/hwinfo-25.4/src/hd/smbios.c
--- old/hwinfo-25.3/src/hd/smbios.c     2026-05-20 17:42:52.000000000 +0200
+++ new/hwinfo-25.4/src/hd/smbios.c     2026-06-02 16:47:54.000000000 +0200
@@ -1579,16 +1579,10 @@
         fprintf(f, "    Memory Device: #%d\n", 
sm->memdevicemap.memdevice_handle);
         fprintf(f, "    Array Mapping: #%d\n", 
sm->memdevicemap.arraymap_handle);
         if(sm->memdevicemap.row_pos != 0xff) fprintf(f, "    Row: %u\n", 
sm->memdevicemap.row_pos);
-        if(
-          !sm->memdevicemap.interleave_pos ||
-          sm->memdevicemap.interleave_pos != 0xff
-        ) {
+        if(sm->memdevicemap.interleave_pos != 0xff) {
           fprintf(f, "    Interleave Pos: %u\n", 
sm->memdevicemap.interleave_pos);
         }
-        if(
-          !sm->memdevicemap.interleave_depth ||
-          sm->memdevicemap.interleave_depth != 0xff
-        ) {
+        if(sm->memdevicemap.interleave_depth != 0xff) {
           fprintf(f, "    Interleaved Depth: %u\n", 
sm->memdevicemap.interleave_depth);
         }
         if((sm->memdevicemap.start_addr | sm->memdevicemap.end_addr) >> 32) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hwinfo-25.3/src/hd/usb.c new/hwinfo-25.4/src/hd/usb.c
--- old/hwinfo-25.3/src/hd/usb.c        2026-05-20 17:42:52.000000000 +0200
+++ new/hwinfo-25.4/src/hd/usb.c        2026-06-02 16:47:54.000000000 +0200
@@ -963,6 +963,9 @@
           }
         }
       }
+
+      bus_name = free_mem(bus_name);
+      sf_drv_name = free_mem(sf_drv_name);
     }
 
     sf_dev = free_mem(sf_dev);

Reply via email to