Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package iotop-c for openSUSE:Factory checked 
in at 2023-10-02 20:04:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/iotop-c (Old)
 and      /work/SRC/openSUSE:Factory/.iotop-c.new.28202 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "iotop-c"

Mon Oct  2 20:04:25 2023 rev:5 rq:1114600 version:1.24

Changes:
--------
--- /work/SRC/openSUSE:Factory/iotop-c/iotop-c.changes  2023-01-24 
20:23:15.429411214 +0100
+++ /work/SRC/openSUSE:Factory/.iotop-c.new.28202/iotop-c.changes       
2023-10-02 20:05:21.860426427 +0200
@@ -1,0 +2,8 @@
+Sun Oct  1 10:14:59 UTC 2023 - Michael Vetter <[email protected]>
+
+- Update to 1.24:
+  * Fix a bug with graphs in ASCII mode
+  * Show the status of the configuration in the help window
+  * Support ancient compilers #52
+
+-------------------------------------------------------------------

Old:
----
  iotop-c-1.23.tar.xz

New:
----
  iotop-c-1.24.tar.xz

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

Other differences:
------------------
++++++ iotop-c.spec ++++++
--- /var/tmp/diff_new_pack.odBLVc/_old  2023-10-02 20:05:23.048469152 +0200
+++ /var/tmp/diff_new_pack.odBLVc/_new  2023-10-02 20:05:23.048469152 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           iotop-c
-Version:        1.23
+Version:        1.24
 Release:        0
 Summary:        Simple top-like I/O monitor (implemented in C)
 License:        GPL-2.0-or-later

++++++ _service ++++++
--- /var/tmp/diff_new_pack.odBLVc/_old  2023-10-02 20:05:23.076470159 +0200
+++ /var/tmp/diff_new_pack.odBLVc/_new  2023-10-02 20:05:23.084470447 +0200
@@ -1,6 +1,6 @@
 <services>
   <service name="tar_scm" mode="disabled">
-    <param name="versionformat">1.23</param>
+    <param name="versionformat">1.24</param>
     <param name="url">https://github.com/Tomas-M/iotop</param>
     <param name="scm">git</param>
     <param name="changesgenerate">disable</param>

++++++ iotop-c-1.23.tar.xz -> iotop-c-1.24.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iotop-c-1.23/Makefile new/iotop-c-1.24/Makefile
--- old/iotop-c-1.23/Makefile   2023-01-24 00:15:36.000000000 +0100
+++ new/iotop-c-1.24/Makefile   2023-10-01 01:13:32.000000000 +0200
@@ -33,12 +33,9 @@
 CFLAGS+=-fanalyzer
 endif
 
+PREFIX?=$(DESTDIR)/usr
 INSTALL?=install
-
-HAVESREA:=$(shell if $(CC) -mno-stackrealign -c /dev/null -o /dev/null 
>/dev/null 2>/dev/null;then echo yes;else echo no;fi)
-ifeq ("$(HAVESREA)","no")
-CFLAGS:=$(filter-out -mno-stackrealign,$(CFLAGS))
-endif
+STRIP?=strip
 
 PKG_CONFIG?=pkg-config
 NCCC?=$(shell $(PKG_CONFIG) --cflags ncursesw)
@@ -54,16 +51,28 @@
 
 # for glibc < 2.17, -lrt is required for clock_gettime
 NEEDLRT:=$(shell if $(CC) -E glibcvertest.h -o -|grep IOTOP_NEED_LRT|grep -q 
yes;then echo need; fi)
+# some architectures do not have -mno-stackrealign
+HAVESREA:=$(shell if $(CC) -mno-stackrealign -xc -c /dev/null -o /dev/null 
>/dev/null 2>/dev/null;then echo yes;else echo no;fi)
+# old comiplers do not have -Wdate-time
+HAVEWDTI:=$(shell if $(CC) -Wdate-time -xc -c /dev/null -o /dev/null 
>/dev/null 2>/dev/null;then echo yes;else echo no;fi)
 
-MYCFLAGS:=$(CPPFLAGS) $(CFLAGS) $(NCCC) -Wall -Wextra -Wformat 
-Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 --std=gnu90 -fPIE
+MYCFLAGS:=$(CPPFLAGS) $(CFLAGS) $(NCCC) -Wall -Wextra -Wformat 
-Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 --std=gnu89 -fPIE
 MYLIBS:=$(NCLD) $(LIBS)
 MYLDFLAGS:=$(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -fPIE -pie
+
+ifeq ("$(HAVESREA)","no")
+MYCFLAGS:=$(filter-out -mno-stackrealign,$(MYCFLAGS))
+MYLDFLAGS:=$(filter-out -mno-stackrealign,$(MYLDFLAGS))
+endif
+
+ifeq ("$(HAVEWDTI)","no")
+MYCFLAGS:=$(filter-out -Wdate-time,$(MYCFLAGS))
+MYLDFLAGS:=$(filter-out -Wdate-time,$(MYLDFLAGS))
+endif
+
 ifeq ("$(NEEDLRT)","need")
 MYLDFLAGS+=-lrt
 endif
-STRIP?=strip
-
-PREFIX?=$(DESTDIR)/usr
 
 ifeq ("$(V)","1")
 Q:=
@@ -124,6 +133,19 @@
        $(Q)$(MAKE) --no-print-directory clean
        $(Q)$(MAKE) --no-print-directory -j
 
+pv:
+       @echo CFLAGS: $(CFLAGS)
+       @echo LDFLAGS: $(LDFLAGS)
+       @echo LIBS: $(LIBS)
+       @echo NCCC: $(NCCC)
+       @echo NCLD: $(NCLD)
+       @echo NEEDLRT: $(NEEDLRT)
+       @echo HAVESREA: $(HAVESREA)
+       @echo HAVEWDTI: $(HAVEWDTI)
+       @echo MYCFLAGS: $(MYCFLAGS)
+       @echo MYLDFLAGS: $(MYLDFLAGS)
+       @echo MYLIBS: $(MYLIBS)
+
 -include $(DEPS)
 
-.PHONY: all clean install uninstall mkotar re
+.PHONY: all clean install uninstall mkotar re pv
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iotop-c-1.23/archlinux/PKGBUILD 
new/iotop-c-1.24/archlinux/PKGBUILD
--- old/iotop-c-1.23/archlinux/PKGBUILD 2023-01-24 00:15:36.000000000 +0100
+++ new/iotop-c-1.24/archlinux/PKGBUILD 2023-10-01 01:13:32.000000000 +0200
@@ -3,14 +3,14 @@
 # Maintainer: Boian Bonev <[email protected]>
 
 pkgname=iotop-c
-pkgver=1.23
+pkgver=1.24
 pkgrel=1
 pkgdesc="simple top-like I/O monitor (implemented in C)"
-arch=('any')
+arch=('i686' 'x86_64' 'aarch64' 'armv7h' 'ppc64le')
 url="https://github.com/Tomas-M/iotop";
 license=('GPL2')
 depends=('ncurses')
-makedepends=('git' 'pkgconf')
+makedepends=('pkgconf')
 conflicts=('iotop' 'iotop-git')
 provides=('iotop')
 source=("${url}/releases/download/v${pkgver}/iotop-${pkgver}.tar.xz" 
"${url}/releases/download/v${pkgver}/iotop-${pkgver}.tar.xz.asc")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iotop-c-1.23/debian/changelog 
new/iotop-c-1.24/debian/changelog
--- old/iotop-c-1.23/debian/changelog   2023-01-24 00:15:36.000000000 +0100
+++ new/iotop-c-1.24/debian/changelog   2023-10-01 01:13:32.000000000 +0200
@@ -1,3 +1,11 @@
+iotop-c (1.24-1) unstable; urgency=medium
+
+  * Update to new upstream release of 1.24
+    - Fix a bug with graphs in ASCII mode
+    - Show the status of the configuration in the help window
+
+ -- Boian Bonev <[email protected]>  Sat, 30 Sep 2023 23:04:47 +0000
+
 iotop-c (1.23-1) unstable; urgency=medium
 
   [ Debian Janitor ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iotop-c-1.23/fedora/iotop-c.spec 
new/iotop-c-1.24/fedora/iotop-c.spec
--- old/iotop-c-1.23/fedora/iotop-c.spec        2023-01-24 00:15:36.000000000 
+0100
+++ new/iotop-c-1.24/fedora/iotop-c.spec        2023-10-01 01:13:32.000000000 
+0200
@@ -1,9 +1,9 @@
 Name:           iotop-c
-Version:        1.23
+Version:        1.24
 Release:        1%{?dist}
 Summary:        Simple top-like I/O monitor (implemented in C)
 
-License:        GPLv2+
+License:        GPL-2.0-or-later
 URL:            https://github.com/Tomas-M/iotop/
 Source0:        
https://github.com/Tomas-M/iotop/releases/download/v%{version}/iotop-%{version}.tar.xz
 Source1:        
https://github.com/Tomas-M/iotop/releases/download/v%{version}/iotop-%{version}.tar.xz.asc
@@ -52,6 +52,15 @@
 %{_mandir}/man8/iotop-c.8*
 
 %changelog
+* Sat Sep 30 2023 Boian Bonev <[email protected]> - 1.24-1
+- Update to latest ver 1.24
+
+* Thu Jul 20 2023 Fedora Release Engineering <[email protected]> - 
1.23-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
+
+* Tue Feb 14 2023 Boian Bonev <[email protected]> - 1.23-2
+- SPDX migration
+
 * Tue Jan 24 2023 Boian Bonev <[email protected]> - 1.23-1
 - Update to latest ver 1.23
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iotop-c-1.23/iotop.8 new/iotop-c-1.24/iotop.8
--- old/iotop-c-1.23/iotop.8    2023-01-24 00:15:36.000000000 +0100
+++ new/iotop-c-1.24/iotop.8    2023-10-01 01:13:32.000000000 +0200
@@ -401,10 +401,10 @@
 \fBs\fR, \fBS\fR
 Toggle freeze of data collection
 .TP
-\fBCtrl\-B\fR
+\fBCtrl\-B\fR, \fBb\fR
 Toggle SI units
 .TP
-\fBCtrl\-R\fR
+\fBCtrl\-R\fR, \fBt\fR
 Cycle unit threshold
 .TP
 \fBCtrl\-T\fR
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iotop-c-1.23/src/iotop.h new/iotop-c-1.24/src/iotop.h
--- old/iotop-c-1.23/src/iotop.h        2023-01-24 00:15:36.000000000 +0100
+++ new/iotop-c-1.24/src/iotop.h        2023-10-01 01:13:32.000000000 +0200
@@ -27,7 +27,7 @@
 #include <sys/types.h>
 #include <stdint.h>
 
-#define VERSION "1.23"
+#define VERSION "1.24"
 
 typedef enum {
        E_GR_IO,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iotop-c-1.23/src/view_batch.c 
new/iotop-c-1.24/src/view_batch.c
--- old/iotop-c-1.23/src/view_batch.c   2023-01-24 00:15:36.000000000 +0100
+++ new/iotop-c-1.24/src/view_batch.c   2023-10-01 01:13:32.000000000 +0200
@@ -100,7 +100,7 @@
 inline void view_batch_loop(void) {
        struct xxxid_stats_arr *ps=NULL;
        struct xxxid_stats_arr *cs=NULL;
-       struct act_stats act={0};
+       struct act_stats act={0,0,0,0,0,0,0,};
 
        for (;;) {
                cs=fetch_data(filter1);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iotop-c-1.23/src/view_curses.c 
new/iotop-c-1.24/src/view_curses.c
--- old/iotop-c-1.23/src/view_curses.c  2023-01-24 00:15:36.000000000 +0100
+++ new/iotop-c-1.24/src/view_curses.c  2023-10-01 01:13:32.000000000 +0200
@@ -141,18 +141,42 @@
 static int initial_delayacct=0; // initial state of task_delayacct
 
 typedef struct {
-       const char *descr;
-       const char *k1;
-       const char *k2;
-       const char *k3;
+       char *descr; // static description or dynamic buffer
+       const char *t; // printf template for the buffer
+       const char *k1; // key 1
+       const char *k2; // key 2
+       const char *k3; // key 3
 } s_helpitem;
 
-static char units[100]="";
-static char unitt[100]="";
+// populated with the longest text for initial help window sizing
+static char tsoor[200]="Toggle sort order [desc]";
+static char tonly[200]="Toggle showing only processes with IO activity [only]";
+static char tproc[200]="Toggle showing processes/threads [proc]";
+static char caccu[200]="Cycle accumulated/accum-bw/current values [accum-bw]";
+static char tcomm[200]="Toggle showing full command line [off]";
+static char tcol1[200]="Toggle showing TID [off]";
+static char tcol2[200]="Toggle showing PRIO [off]";
+static char tcol3[200]="Toggle showing USER [off]";
+static char tcol4[200]="Toggle showing DISK READ [off]";
+static char tcol5[200]="Toggle showing DISK WRITE [off]";
+static char tcol6[200]="Toggle showing SWAPIN [off]";
+static char tcol7[200]="Toggle showing IO [off]";
+static char tcol8[200]="Toggle showing GRAPH [off]";
+static char tcol9[200]="Toggle showing COMMAND [off]";
+static char cgrph[200]="Cycle GRAPH source (IO, R, W, R+W, SW) [R+W]";
+static char tgrdi[200]="Toggle reverse GRAPH direction [right]";
+static char tasci[200]="Toggle using Unicode/ASCII characters [Unicode]";
+static char tcolr[200]="Toggle colorizing values [off]";
+static char txxxi[200]="Toggle exited processes xxx/inverse [inverse]";
+static char texit[200]="Toggle showing exited processes [off]";
+static char tfrez[200]="Toggle data freeze [off]";
+static char units[200]="Toggle SI units [1024]";
+static char unitt[200]="Cycle unit threshold [10]";
+static char tdact[200]="Toggle task_delayacct [dynamic off]";
 
 const s_helpitem thelp[]={
        {.descr="Exit",.k2="q",.k3="Q"},
-       {.descr="Toggle sort order",.k1="<space>",.k2="r"},
+       {.descr=tsoor,.t="Toggle sort order [%s]",.k1="<space>",.k2="r"},
        {.descr="Scroll to the top of the list",.k1="<home>"},
        {.descr="Scroll to the bottom of the list",.k1="<end>"},
        {.descr="Scroll one screen up",.k1="<page-up>"},
@@ -162,38 +186,38 @@
        {.descr="Sort by next column",.k1="<right>"},
        {.descr="Sort by previous column",.k1="<left>"},
        {.descr="Cancel ionice/filter/search or close help window",.k1="<esc>"},
-       {.descr="Toggle showing only processes with IO 
activity",.k2="o",.k3="O"},
-       {.descr="Toggle showing processes/threads",.k2="p",.k3="P"},
-       {.descr="Cycle accumulated/accum-bw/current values",.k2="a",.k3="A"},
-       {.descr="Toggle showing full command line",.k2="c",.k3="C"},
-       {.descr="Toggle showing TID",.k2="1"},
-       {.descr="Toggle showing PRIO",.k2="2"},
-       {.descr="Toggle showing USER",.k2="3"},
-       {.descr="Toggle showing DISK READ",.k2="4"},
-       {.descr="Toggle showing DISK WRITE",.k2="5"},
-       {.descr="Toggle showing SWAPIN",.k2="6"},
-       {.descr="Toggle showing IO",.k2="7"},
-       {.descr="Toggle showing GRAPH",.k2="8"},
-       {.descr="Toggle showing COMMAND",.k2="9"},
+       {.descr=tonly,.t="Toggle showing only processes with IO activity 
[%s]",.k2="o",.k3="O"},
+       {.descr=tproc,.t="Toggle showing processes/threads 
[%s]",.k2="p",.k3="P"},
+       {.descr=caccu,.t="Cycle accumulated/accum-bw/current values 
[%s]",.k2="a",.k3="A"},
+       {.descr=tcomm,.t="Toggle showing full command line 
[%s]",.k2="c",.k3="C"},
+       {.descr=tcol1,.t="Toggle showing TID [%s]",.k2="1"},
+       {.descr=tcol2,.t="Toggle showing PRIO [%s]",.k2="2"},
+       {.descr=tcol3,.t="Toggle showing USER [%s]",.k2="3"},
+       {.descr=tcol4,.t="Toggle showing DISK READ [%s]",.k2="4"},
+       {.descr=tcol5,.t="Toggle showing DISK WRITE [%s]",.k2="5"},
+       {.descr=tcol6,.t="Toggle showing SWAPIN [%s]",.k2="6"},
+       {.descr=tcol7,.t="Toggle showing IO [%s]",.k2="7"},
+       {.descr=tcol8,.t="Toggle showing GRAPH [%s]",.k2="8"},
+       {.descr=tcol9,.t="Toggle showing COMMAND [%s]",.k2="9"},
        {.descr="Show all columns",.k2="0"},
-       {.descr="Cycle GRAPH source (IO, R, W, R+W, SW)",.k2="g",.k3="G"},
-       {.descr="Toggle reverse GRAPH direction",.k2="R"},
+       {.descr=cgrph,.t="Cycle GRAPH source (IO, R, W, R+W, SW) 
[%s]",.k2="g",.k3="G"},
+       {.descr=tgrdi,.t="Toggle reverse GRAPH direction [%s]",.k2="R"},
        {.descr="Toggle showing inline help",.k2="?"},
-       {.descr="Toggle showing this help",.k2="h",.k3="H"},
+       {.descr="Toggle showing this help [on]",.k2="h",.k3="H"},
        {.descr="IOnice a process/thread",.k2="i",.k3="I"},
        {.descr="Change UID and PID filters",.k2="f",.k3="F"},
        {.descr="Search cmdline by regex",.k2="/"},
-       {.descr="Toggle using Unicode/ASCII characters",.k2="u",.k3="U"},
-       {.descr="Toggle colorizing values",.k2="l",.k3="L"},
-       {.descr="Toggle exited processes xxx/inverse",.k2="x",.k3="X"},
-       {.descr="Toggle showing exited processes",.k2="e",.k3="E"},
-       {.descr="Toggle data freeze",.k2="s",.k3="S"},
-       {.descr=units,.k1="<Ctrl-B>",.k2="",.k3=""},
-       {.descr=unitt,.k1="<Ctrl-R>",.k2="",.k3=""},
-       {.descr="Toggle task_delayacct (if 
available)",.k1="<Ctrl-T>",.k2="",.k3=""},
+       {.descr=tasci,.t="Toggle using Unicode/ASCII characters 
[%s]",.k2="u",.k3="U"},
+       {.descr=tcolr,.t="Toggle colorizing values [%s]",.k2="l",.k3="L"},
+       {.descr=txxxi,.t="Toggle exited processes xxx/inverse 
[%s]",.k2="x",.k3="X"},
+       {.descr=texit,.t="Toggle showing exited processes 
[%s]",.k2="e",.k3="E"},
+       {.descr=tfrez,.t="Toggle data freeze [%s]",.k2="s",.k3="S"},
+       {.descr=units,.t="Toggle SI units [%d]",.k1="<Ctrl-B>",.k2="b",.k3=""},
+       {.descr=unitt,.t="Cycle unit threshold 
[%d]",.k1="<Ctrl-R>",.k2="t",.k3=""},
+       {.descr=tdact,.t="Toggle task_delayacct 
[%s]",.k1="<Ctrl-T>",.k2="",.k3=""},
        {.descr="Redraw screen",.k1="<Ctrl-L>",.k2="",.k3=""},
        {.descr="Reset all settings to their defaults",.k2="D"},
-       {.descr="Save current setting in config file",.k2="W"},
+       {.descr="Save the current settings in config file",.k2="W"},
        {.descr=NULL},
 };
 
@@ -426,13 +450,123 @@
        int i,a=c1w,b=c2w,c=c3w,d=cdw;
        int hh=getmaxy(whelp);
        int hw=getmaxx(whelp);
-       static int helpcnt=0;
+       int helpcnt=0;
        const s_helpitem *p;
        int can_scroll;
 
-       if (!helpcnt) // count thelp items once
-               for (p=thelp;p->descr;p++)
-                       helpcnt++;
+       for (p=thelp;p->descr;p++) {
+               helpcnt++;
+               if (p->t)
+                       switch (p->k2[0]) {
+                               case 'r':
+                                       
sprintf(p->descr,p->t,(config.f.sort_order==SORT_ASC)?"asc":"desc");
+                                       break;
+                               case 'o':
+                                       
sprintf(p->descr,p->t,config.f.only?"only":"all");
+                                       break;
+                               case 'p':
+                                       
sprintf(p->descr,p->t,config.f.processes?"proc":"all");
+                                       break;
+                               case 'a': {
+                                       char *acc="current";
+
+                                       if (config.f.accumulated)
+                                               acc="accum";
+                                       else if (config.f.accumbw)
+                                               acc="accum-bw";
+                                       sprintf(p->descr,p->t,acc);
+                                       break;
+                               }
+                               case 'c':
+                                       
sprintf(p->descr,p->t,config.f.fullcmdline?"on":"off");
+                                       break;
+                               case '1':
+                                       
sprintf(p->descr,p->t,!config.f.hidepid?"on":"off");
+                                       break;
+                               case '2':
+                                       
sprintf(p->descr,p->t,!config.f.hideprio?"on":"off");
+                                       break;
+                               case '3':
+                                       
sprintf(p->descr,p->t,!config.f.hideuser?"on":"off");
+                                       break;
+                               case '4':
+                                       
sprintf(p->descr,p->t,!config.f.hideread?"on":"off");
+                                       break;
+                               case '5':
+                                       
sprintf(p->descr,p->t,!config.f.hidewrite?"on":"off");
+                                       break;
+                               case '6':
+                                       
sprintf(p->descr,p->t,!config.f.hideswapin?"on":"off");
+                                       break;
+                               case '7':
+                                       
sprintf(p->descr,p->t,!config.f.hideio?"on":"off");
+                                       break;
+                               case '8':
+                                       
sprintf(p->descr,p->t,!config.f.hidegraph?"on":"off");
+                                       break;
+                               case '9':
+                                       
sprintf(p->descr,p->t,!config.f.hidecmd?"on":"off");
+                                       break;
+                               case 'g': {
+                                       char *grt="";
+
+                                       switch (config.f.grtype) {
+                                               case E_GR_IO:
+                                                       grt="IO";
+                                                       break;
+                                               case E_GR_R:
+                                                       grt="R";
+                                                       break;
+                                               case E_GR_W:
+                                                       grt="W";
+                                                       break;
+                                               case E_GR_RW:
+                                                       grt="R+W";
+                                                       break;
+                                               case E_GR_SW:
+                                                       grt="SW";
+                                                       break;
+                                       }
+
+                                       sprintf(p->descr,p->t,grt);
+                                       break;
+                               }
+                               case 'R':
+                                       
sprintf(p->descr,p->t,config.f.reverse_graph?"left":"right");
+                                       break;
+                               case 'u':
+                                       
sprintf(p->descr,p->t,config.f.unicode?"Unicode":"ASCII");
+                                       break;
+                               case 'l':
+                                       
sprintf(p->descr,p->t,config.f.nocolor?"off":"on");
+                                       break;
+                               case 'x':
+                                       
sprintf(p->descr,p->t,config.f.deadx?"xxx":"inverse");
+                                       break;
+                               case 'e':
+                                       
sprintf(p->descr,p->t,config.f.hideexited?"off":"on");
+                                       break;
+                               case 's':
+                                       
sprintf(p->descr,p->t,dontrefresh?"on":"off");
+                                       break;
+                               case 'b':
+                                       sprintf(p->descr,p->t,config.f.base);
+                                       break;
+                               case 't':
+                                       
sprintf(p->descr,p->t,config.f.threshold);
+                                       break;
+                               case 0: { // only task_delayacct has no key
+                                       char *tda="";
+
+                                       if (has_task_delayacct())
+                                               
tda=read_task_delayacct()?"dynamic on":"dynamic off";
+                                       else
+                                               tda="static on";
+                                       sprintf(p->descr,p->t,tda);
+                                       break;
+                               }
+                       }
+       }
 
        // adjust scroll position
        if (hh-2>=helpcnt) { // all fits, no scroll
@@ -445,9 +579,6 @@
        if (helppos<0) // can't go before start
                helppos=0;
 
-       snprintf(units,sizeof units,"Toggle SI units [now: %d]",config.f.base);
-       snprintf(unitt,sizeof unitt,"Cycle unit threshold [now: 
%d]",config.f.threshold);
-
        mvwprintw(whelp,0,0,"%s",(has_unicode&&config.f.unicode)?"─":"_");
        wattron(whelp,A_REVERSE);
        wprintw(whelp," help ");
@@ -964,21 +1095,21 @@
                                                                
v1=value2scale(s->readhist[j*2],maxvisible);
                                                                
v2=value2scale(s->readhist[j*2+gi],maxvisible);
                                                        } else
-                                                               
v1=value2scale(s->readhist[j*2],maxvisible);
+                                                               
v1=value2scale(s->readhist[j],maxvisible);
                                                        break;
                                                case E_GR_W:
                                                        if 
(has_unicode&&config.f.unicode) {
                                                                
v1=value2scale(s->writehist[j*2],maxvisible);
                                                                
v2=value2scale(s->writehist[j*2+gi],maxvisible);
                                                        } else
-                                                               
v1=value2scale(s->writehist[j*2],maxvisible);
+                                                               
v1=value2scale(s->writehist[j],maxvisible);
                                                        break;
                                                case E_GR_RW:
                                                        if 
(has_unicode&&config.f.unicode) {
                                                                
v1=value2scale(s->readhist[j*2]+s->writehist[j*2],maxvisible);
                                                                
v2=value2scale(s->readhist[j*2+gi]+s->writehist[j*2+gi],maxvisible);
                                                        } else
-                                                               
v1=value2scale(s->readhist[j*2]+s->writehist[j*2],maxvisible);
+                                                               
v1=value2scale(s->readhist[j]+s->writehist[j],maxvisible);
                                                        break;
                                                case E_GR_SW:
                                                        if 
(has_unicode&&config.f.unicode) {
@@ -2134,9 +2265,11 @@
                                update_search();
                        }
                        break;
+               case 'b':
                case KEY_CTRL_B:
                        config.f.base=config.f.base==1000?1024:1000;
                        break;
+               case 't':
                case KEY_CTRL_R:
                        config.f.threshold++;
                        if (config.f.threshold>10)
@@ -2251,7 +2384,7 @@
 inline void view_curses_loop(void) {
        struct xxxid_stats_arr *ps=NULL;
        struct xxxid_stats_arr *cs=NULL;
-       struct act_stats act={0};
+       struct act_stats act={0,0,0,0,0,0,0,};
        uint64_t bef=0;
        int refresh=0;
        int k=ERR;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iotop-c-1.23/src/vmstat.c 
new/iotop-c-1.24/src/vmstat.c
--- old/iotop-c-1.23/src/vmstat.c       2023-01-24 00:15:36.000000000 +0100
+++ new/iotop-c-1.24/src/vmstat.c       2023-10-01 01:13:32.000000000 +0200
@@ -50,7 +50,7 @@
                        t=realloc(buf,bs+BSIZ);
 
                        if (!t) {
-                               free(buf);
+                               free(buf); // gcc-13 yields false positive 
-Wuse-after-free here
                                close(fd);
                                return ENOMEM;
                        }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iotop-c-1.23/src/xxxid_info.c 
new/iotop-c-1.24/src/xxxid_info.c
--- old/iotop-c-1.23/src/xxxid_info.c   2023-01-24 00:15:36.000000000 +0100
+++ new/iotop-c-1.24/src/xxxid_info.c   2023-10-01 01:13:32.000000000 +0200
@@ -27,8 +27,7 @@
 
 /*
  * Generic macros for dealing with netlink sockets. Might be duplicated
- * elsewhere. It is recommended that commercial grade applications use
- * libnl or libnetlink and use the interfaces provided by the library
+ * elsewhere
  */
 #define GENLMSG_DATA(glh)         ((void *)((char*)NLMSG_DATA(glh) + 
GENL_HDRLEN))
 #define GENLMSG_PAYLOAD(glh)   (NLMSG_PAYLOAD(glh, 0) - GENL_HDRLEN)

Reply via email to