Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package diffstat for openSUSE:Factory 
checked in at 2025-09-09 20:30:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/diffstat (Old)
 and      /work/SRC/openSUSE:Factory/.diffstat.new.1977 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "diffstat"

Tue Sep  9 20:30:44 2025 rev:34 rq:1303335 version:1.68

Changes:
--------
--- /work/SRC/openSUSE:Factory/diffstat/diffstat.changes        2024-12-09 
21:13:06.724832987 +0100
+++ /work/SRC/openSUSE:Factory/.diffstat.new.1977/diffstat.changes      
2025-09-09 20:31:21.004020312 +0200
@@ -1,0 +2,6 @@
+Tue Sep  9 10:35:57 UTC 2025 - [email protected]
+
+- version update to 1.68
+  + correct len parameter of mbsrtowcs (Redhat #2362049).
+
+-------------------------------------------------------------------

Old:
----
  diffstat-1.67.tgz
  diffstat-1.67.tgz.asc

New:
----
  diffstat-1.68.tgz
  diffstat-1.68.tgz.asc

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

Other differences:
------------------
++++++ diffstat.spec ++++++
--- /var/tmp/diff_new_pack.7Cp7yg/_old  2025-09-09 20:31:21.620046273 +0200
+++ /var/tmp/diff_new_pack.7Cp7yg/_new  2025-09-09 20:31:21.624046441 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package diffstat
 #
-# Copyright (c) 2024 SUSE LLC
+# Copyright (c) 2025 SUSE LLC and contributors
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 
 
 Name:           diffstat
-Version:        1.67
+Version:        1.68
 Release:        0
 Summary:        Utility That Provides Statistics Based on the Output of diff
 License:        MIT

++++++ diffstat-1.67.tgz -> diffstat-1.68.tgz ++++++
++++ 4386 lines of diff (skipped)
++++    retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/diffstat-1.67/CHANGES new/diffstat-1.68/CHANGES
--- old/diffstat-1.67/CHANGES   2024-11-11 12:50:08.000000000 +0100
+++ new/diffstat-1.68/CHANGES   2025-04-24 21:21:22.000000000 +0200
@@ -1,4 +1,13 @@
--- $Id: CHANGES,v 1.113 2024/11/11 11:50:08 tom Exp $
+-- $Id: CHANGES,v 1.116 2025/04/24 19:21:22 tom Exp $
+
+2025/04/24 (diffstat 1.68)
+       + correct len parameter of mbsrtowcs (Redhat #2362049).
+
+       + improve configure script:
+         CF_CONST_X_STRING, simplify with $ac_includes_default
+         CF_GCC_WARNINGS, add gcc15 warning for zero vs NULL
+         CF_PROG_LINT add options for lint program on NetBSD, and make a
+         "predefined" symbol to help with cppcheck false-positives
 
 2024/11/11 (diffstat 1.67)
        + align license text with xterm, i.e., "MIT-X11"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/diffstat-1.67/COPYING new/diffstat-1.68/COPYING
--- old/diffstat-1.67/COPYING   2024-11-11 12:42:37.000000000 +0100
+++ new/diffstat-1.68/COPYING   2025-04-24 21:26:54.000000000 +0200
@@ -1,4 +1,4 @@
-Copyright 1994-2023,2024 by Thomas E.  Dickey
+Copyright 1994-2024,2025 by Thomas E.  Dickey
 
 Permission is hereby granted, free of charge, to any person obtaining a copy of
 this software and associated documentation files (the "Software"), to deal in
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/diffstat-1.67/COPYING.asc new/diffstat-1.68/COPYING.asc
--- old/diffstat-1.67/COPYING.asc       2024-11-11 13:36:18.000000000 +0100
+++ new/diffstat-1.68/COPYING.asc       2025-04-24 21:27:21.000000000 +0200
@@ -1,15 +1,15 @@
 -----BEGIN PGP SIGNATURE-----
 Comment: See https://invisible-island.net/public/public.html for info
 
-iQGzBAABCgAdFiEEGYgtkt2kxADCLA1WzCr0RyFnvgMFAmcx+j8ACgkQzCr0RyFn
-vgOgTQv+JSMPNZvQ/QViGE8to0b7KUxhZyAPlGcxwLWCXvKCyDHzTIXmw8+tEnLP
-aCcUxMqIue+Xx35aasyvcSkiMpXPgQ+0YeJ47jcBLZEboj7eLf+iqEdKhRWQ+w8r
-XQhCmb19N13PAD5SysvmpiamO3T5YuSQiGOtW+fy85NwSnkqrxIcCZfU6Ufa2S/U
-4JytsWREMjYPvPYNqcGhSUoY/feBuQnzjJDBYGoIFck+i8wFyzS6IARjmg7zvHPY
-76peuFbPN9l1wx/vb/NNOfUhOFHko24k+ZprsCE7a9tW0FfLQgjvqia/ZC/MNdHH
-7xXUh2Eowi+BzCL6dXelHMvuxNz844OBgVVxTGoXUYz+uMuz1VnSyLLSqOriiDgW
-g+Smnbvwc9T2U3kx1riM6oG4Wh8/pq2+8IZ+ojmtOtyATjNwyiLIYmKEsRuybVnR
-xxBdMEnnMQdpVE5okOrDErBqSVr9uXLG0fbheMCuQZQvHArSdzg5XWtRwsiUyJab
-ylNRc5nC
-=wjJ6
+iQGzBAABCgAdFiEEGYgtkt2kxADCLA1WzCr0RyFnvgMFAmgKkJYACgkQzCr0RyFn
+vgN/TAwAhNH1n3agdenLrgysd+sWSgNwKhDIQlhYup/w2lgyXkx+fLghM1e9JgTW
+cAhQmDKftsiXhW0pUBth8pJw+EBajZgaOO7Ic5zwAbrU+M+6C7tbKUGt+Pn5xayX
+VUD4UZa6YdOWAYNh8ZTzMaSAqkw7+QasVm4qWYznJPE5Mq9M05aDLn+c98dA+3vl
+CV4Gw9SiP9v7EnIOvBaWpSRyrqCs1sq0+9zBCIBnX5WyF50IUijvAJec2BAR0z0C
+rkiz2M1WnUmdMJrb3eI4j87CwccuEBLcRSuRX4in1jbXsembiTshZJ3jFs94g6eJ
+iwLU/5aPOsbl+91eLTlqOdTuovLnKTH7f4q9nwsnqVHU9153iweJpiZSi2qnuLFG
+B3shI9Ie7C72UdwPGb1QpUSwnJhDQkW0UWutj0RMlBIME2QE33Oj/0aAbBuA9AZX
+vCuOR9aHWW5WCrmK5y6Yu4Wmd/PmYwEPx74MwzSKQLn9wJOieZKlvR/V0C0KISSP
+CV7ROj5Z
+=10gP
 -----END PGP SIGNATURE-----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/diffstat-1.67/diffstat.1 new/diffstat-1.68/diffstat.1
--- old/diffstat-1.67/diffstat.1        2024-11-11 13:59:28.000000000 +0100
+++ new/diffstat-1.68/diffstat.1        2025-04-24 21:29:20.000000000 +0200
@@ -1,5 +1,5 @@
 
.\"*****************************************************************************
-.\" Copyright 1994-2022,2024 by Thomas E. Dickey
+.\" Copyright 1994-2024,2025 by Thomas E. Dickey
 .\"
 .\" Permission is hereby granted, free of charge, to any person obtaining a
 .\" copy of this software and associated documentation files (the "Software"),
@@ -23,20 +23,17 @@
 .\" holders shall not be used in advertising or otherwise to promote the sale,
 .\" use or other dealings in this Software without prior written authorization.
 
.\"*****************************************************************************
-.\" $Id: diffstat.1,v 1.45 2024/11/11 12:59:28 tom Exp $
-.TH DIFFSTAT 1 2024-11-11 "1.67" "User commands"
+.\" $Id: diffstat.1,v 1.46 2025/04/24 19:29:20 tom Exp $
+.TH DIFFSTAT 1 2025-04-24 "1.68" "User commands"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
-.ds '  \(aq
 .\}
 .el \{\
 .ie t .ds `` ``
 .el   .ds `` ""
 .ie t .ds '' ''
 .el   .ds '' ""
-.ie t .ds '  \(aq
-.el   .ds '  '
 .\}
 .SH NAME
 \fBdiffstat\fP \-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/diffstat-1.67/diffstat.c new/diffstat-1.68/diffstat.c
--- old/diffstat-1.67/diffstat.c        2024-11-11 14:01:06.000000000 +0100
+++ new/diffstat-1.68/diffstat.c        2025-04-24 23:21:16.000000000 +0200
@@ -1,5 +1,5 @@
 /******************************************************************************
- * Copyright 1994-2023,2024 by Thomas E. Dickey                               *
+ * Copyright 1994-2024,2025 by Thomas E. Dickey                               *
  *                                                                            *
  * Permission is hereby granted, free of charge, to any person obtaining a    *
  * copy of this software and associated documentation files (the "Software"), *
@@ -26,7 +26,7 @@
  
******************************************************************************/
 
 #ifndef        NO_IDENT
-static const char *Id = "$Id: diffstat.c,v 1.67 2024/11/11 13:01:06 tom Exp $";
+static const char *Id = "$Id: diffstat.c,v 1.68 2025/04/24 21:21:16 tom Exp $";
 #endif
 
 /*
@@ -34,6 +34,7 @@
  * Author:     T.E.Dickey
  * Created:    02 Feb 1992
  * Modified:
+ *             24 Apr 2025, correct len parameter of mbsrtowcs.
  *             11 Nov 2024, add decompression for zstd
  *             28 Jan 2024, fixes for stricter gcc warnings
  *             01 Mar 2023, ignore ".git" directories, etc., in -S/-D options.
@@ -448,10 +449,10 @@
 {2, 1, 6, 4};
 
 static DATA *all_data;
-static char *S_option = 0;
-static char *D_option = 0;
+static char *S_option = NULL;
+static char *D_option = NULL;
 static const char *comment_opt = "";
-static char *path_opt = 0;
+static char *path_opt = NULL;
 static int count_files;                /* true if we count added/deleted files 
*/
 static int format_opt = FMT_NORMAL;
 static int max_name_wide;      /* maximum amount reserved for filenames */
@@ -514,7 +515,7 @@
 do_stat(const char *name, struct stat *sb)
 {
     int rc;
-    if (name != 0) {
+    if (name != NULL) {
 #ifdef HAVE_LSTAT
        rc = lstat(name, sb);
 #else
@@ -557,9 +558,9 @@
        && do_stat(target, &dsb) == 0 && S_ISREG(dsb.st_mode)
        && ssb.st_size == dsb.st_size) {
        FILE *ip = fopen(source, "r");
-       if (ip != 0) {
+       if (ip != NULL) {
            FILE *op = fopen(target, "r");
-           if (op != 0) {
+           if (op != NULL) {
                int a = EOF;
                int b = EOF;
                rc = 1;
@@ -651,7 +652,7 @@
     void *pp;
 
     init_data(&find, NULL, modified, 1, base);
-    if ((pp = tfind(&find, &sorted_data, compare_data)) != 0) {
+    if ((pp = tfind(&find, &sorted_data, compare_data)) != NULL) {
        result = *(DATA **) pp;
        return result;
     }
@@ -669,7 +670,7 @@
 {
     int count = 0;
     const char *s;
-    while ((s = strchr(name, PATHSEP)) != 0) {
+    while ((s = strchr(name, PATHSEP)) != NULL) {
        name = s + 1;
        ++count;
     }
@@ -685,7 +686,7 @@
 
        for (n = prefix; n > 0; n--) {
            const char *s = strchr(name + *base, PATHSEP);
-           if (s == 0 || *++s == EOS) {
+           if (s == NULL || *++s == EOS) {
                name = s;
                break;
            }
@@ -728,7 +729,7 @@
        DATA *q;
 
        init_data(&find, original, modified, 1, base);
-       for (p = all_data, q = 0; p != 0; q = p, p = p->link) {
+       for (p = all_data, q = NULL; p != NULL; q = p, p = p->link) {
            int cmp = compare_data(p, &find);
            if (merge_names && (cmp == 0))
                return p;
@@ -736,7 +737,7 @@
                break;
        }
        r = new_data(original, modified, base);
-       if (q != 0)
+       if (q != NULL)
            q->link = r;
        else
            all_data = r;
@@ -759,13 +760,13 @@
 
 #ifdef HAVE_TSEARCH
     if (use_tsearch) {
-       if (tdelete(data, &sorted_data, compare_data) == 0)
+       if (tdelete(data, &sorted_data, compare_data) == NULL)
            return 0;
     }
 #endif
-    for (p = all_data, q = 0; p != 0; q = p, p = p->link) {
+    for (p = all_data, q = NULL; p != NULL; q = p, p = p->link) {
        if (p == data) {
-           if (q != 0)
+           if (q != NULL)
                q->link = p->link;
            else
                all_data = p->link;
@@ -802,7 +803,7 @@
            break;
        }
     }
-    return ok ? s : 0;
+    return ok ? s : NULL;
 }
 
 static int
@@ -841,26 +842,26 @@
        *second_size = 1;
 
        *first = strtol(s, &next, 10);
-       if (next != 0 && next != s) {
+       if (next != NULL && next != s) {
            if (*next == ',') {
                s = ++next;
                *first_size = strtol(s, &next, 10) + 1 - *first;
            }
        }
-       if (next != 0 && next != s) {
+       if (next != NULL && next != s) {
            switch (*next++) {
            case 'a':
            case 'c':
            case 'd':
                s = next;
                *second = strtol(s, &next, 10);
-               if (next != 0 && next != s) {
+               if (next != NULL && next != s) {
                    if (*next == ',') {
                        s = ++next;
                        *second_size = strtol(s, &next, 10) + 1 - *second;
                    }
                }
-               if (next != 0 && next != s && *next == EOS)
+               if (next != NULL && next != s && *next == EOS)
                    rc = 1;
                break;
            }
@@ -946,8 +947,8 @@
 {
     const char *s;
 
-    if (strchr(theLeaf, PATHSEP) == 0
-       && (s = strrchr(path, PATHSEP)) != 0
+    if (strchr(theLeaf, PATHSEP) == NULL
+       && (s = strrchr(path, PATHSEP)) != NULL
        && !strcmp(++s, theLeaf))
        return 1;
     return 0;
@@ -969,11 +970,13 @@
      */
     if (use_tsearch) {
        char *trim = new_string(target);
-       trim[length] = EOS;
-       *datap = add_tsearch_data(NULL, trim, (*datap)->base);
-       target = (*datap)->modified;
-       free(trim);
-       *localp = 1;
+       if (trim != NULL) {
+           trim[length] = EOS;
+           *datap = add_tsearch_data(NULL, trim, (*datap)->base);
+           target = (*datap)->modified;
+           free(trim);
+           *localp = 1;
+       }
     } else
 #endif
        target[length] = EOS;
@@ -1156,7 +1159,7 @@
           NonNull(p->modified)));
 
     if (!can_be_merged(p->modified)
-       && strchr(p->modified, PATHSEP) != 0) {
+       && strchr(p->modified, PATHSEP) != NULL) {
        TRACE(("** begin_data:HAVE_PATH\n"));
        return HAVE_PATH;
     }
@@ -1181,7 +1184,7 @@
 {
     int delim = (*s == SQUOTE) ? SQUOTE : DQUOTE;
 
-    if ((*s == delim) && (s[1] != EOS) && (strchr) (s + 1, delim) != 0) {
+    if ((*s == delim) && (s[1] != EOS) && (strchr) (s + 1, delim) != NULL) {
        ++s;
        while (*s != EOS && (*s != delim) && isprint(UC(*s))) {
            ++s;
@@ -1244,7 +1247,7 @@
 static void
 adjust_buffer(char **buffer, size_t want)
 {
-    if ((*buffer = (char *) realloc(*buffer, want)) == 0)
+    if ((*buffer = (char *) realloc(*buffer, want)) == NULL)
        failed("realloc");
 }
 
@@ -1284,7 +1287,7 @@
 
     TRACE(("count_lines \"%s\"\n", filename));
 
-    if ((fp = fopen(filename, "r")) != 0) {
+    if ((fp = fopen(filename, "r")) != NULL) {
        int ch;
 
        result = 0;
@@ -1308,11 +1311,11 @@
 count_lines(const DATA * p)
 {
     int result = -1;
-    char *filename = 0;
+    char *filename = NULL;
     const char *filetail = data_filename(p);
     size_t want = strlen(path_opt) + 2 + strlen(filetail) + 
strlen(p->modified);
 
-    if ((filename = xmalloc(want)) != 0) {
+    if ((filename = xmalloc(want)) != NULL) {
        int merge = 0;
 
        if (path_dest && *path_opt != EOS && *filetail != PATHSEP) {
@@ -1335,7 +1338,7 @@
                }
            }
 
-           if (merge == 0 && tail_sep != 0) {
+           if (merge == 0 && tail_sep != NULL) {
                tail_len = (size_t) (tail_sep - filetail);
                if (tail_len != 0 && tail_len <= path_len) {
                    if (tail_len < path_len
@@ -1421,7 +1424,7 @@
 static char *
 copy_notabs(char *target, char *source, size_t limit)
 {
-    char *result = 0;
+    char *result = NULL;
     if (limit-- != 0) {                /* count trailing null */
        char ch;
        int found = 0;
@@ -1676,9 +1679,9 @@
 
     DATA dummy;
     DATA *that = &dummy;
-    DATA *prev = 0;
-    char *buffer = 0;
-    char *b_fname = 0;
+    DATA *prev = NULL;
+    char *buffer = NULL;
+    char *b_fname = NULL;
     size_t length = 0;
     size_t fixed = 0;
     int ok = HAVE_NOTHING;
@@ -1732,7 +1735,7 @@
         * Trim escapes from colordiff.
         */
 #define isFINAL(c) (UC(*s) >= '\140' && UC(*s) <= '\176')
-       if (trim_escapes && (strchr(buffer, '\033') != 0)) {
+       if (trim_escapes && (strchr(buffer, '\033') != NULL)) {
            char *d = buffer;
            s = d;
            while (*s != EOS) {
@@ -1834,7 +1837,7 @@
             */
            unified = 0;
            TRACE(("?? Expected \"+++\" for unified diff\n"));
-           if (prev != 0
+           if (prev != NULL
                && prev != that
                && InsOf(that) == 0
                && DelOf(that) == 0
@@ -1865,7 +1868,7 @@
                    --new_unify;
                break;
            case BACKSL:
-               if (strstr(buffer, "newline") != 0) {
+               if (strstr(buffer, "newline") != NULL) {
                    break;
                }
                /* FALLTHRU */
@@ -1931,9 +1934,9 @@
            break;
        case 1:
            /* expect "index" */
-           if (match(buffer, "index") != 0
-               || match(buffer, "rename") != 0
-               || match(buffer, "similarity") != 0) {
+           if (match(buffer, "index") != NULL
+               || match(buffer, "rename") != NULL
+               || match(buffer, "similarity") != NULL) {
                git_diff = 2;
                continue;
            } else {
@@ -1942,11 +1945,11 @@
            break;
        case 2:
            /* perhaps "GIT binary patch" */
-           if (match(buffer, "GIT binary patch") != 0) {
+           if (match(buffer, "GIT binary patch") != NULL) {
                git_diff = 3;
                that->cmt = Binary;
                continue;
-           } else if (match(buffer, "Binary files ") != 0) {
+           } else if (match(buffer, "Binary files ") != NULL) {
                git_diff = 0;
                that->cmt = Binary;
                continue;
@@ -2000,7 +2003,7 @@
             */
        case 'I':
            CASE_TRACE();
-           if ((s = match(buffer, "Index: ")) != 0) {
+           if ((s = match(buffer, "Index: ")) != NULL) {
                s = skip_blanks(s);
                dequote(s);
                blip('.');
@@ -2013,7 +2016,7 @@
 
        case 'd':               /* diff command trace */
            CASE_TRACE();
-           if ((s = match(buffer, "diff ")) != 0
+           if ((s = match(buffer, "diff ")) != NULL
                && *(s = skip_options(s)) != EOS) {
                char *original = NULL;
                char *modified = NULL;
@@ -2030,7 +2033,7 @@
                    modified = s;
                    *to_blank = EOS;
                }
-               if (match(buffer, "diff --git ") != 0) {
+               if (match(buffer, "diff --git ") != NULL) {
                    size_t old_len = strlen(original);
                    size_t new_len = strlen(modified);
                    char *temp = xmalloc(old_len + new_len + 1);
@@ -2141,7 +2144,7 @@
 
                    s = do_merging(that, b_fname, &freed);
                    if (freed)
-                       prev = 0;
+                       prev = NULL;
                    that = find_data(git_source, s);
                    ok = begin_data(that);
                    TRACE(("** after merge:%d:%s\n", ok, s));
@@ -2174,7 +2177,7 @@
                    dequote(b_fname);
                    s = do_merging(that, b_fname, &freed);
                    if (freed)
-                       prev = 0;
+                       prev = NULL;
                    that = find_data(NULL, s);
                    ok = begin_data(that);
                    TRACE(("** after merge:%d:%s\n", ok, s));
@@ -2219,7 +2222,7 @@
        case 'F':               /* FALL-THRU */
        case 'f':
            CASE_TRACE();
-           if ((s = match(buffer + 1, "iles ")) != 0) {
+           if ((s = match(buffer + 1, "iles ")) != NULL) {
                char *first = skip_blanks(s);
                /* blindly assume the first filename does not contain " and " */
                char *at_and = strstr(s, " and ");
@@ -2247,7 +2250,7 @@
        case 'B':               /* FALL-THRU */
        case 'b':
            CASE_TRACE();
-           if ((s = match(buffer + 1, "inary files ")) != 0) {
+           if ((s = match(buffer + 1, "inary files ")) != NULL) {
                char *first = skip_blanks(s);
                /* blindly assume the first filename does not contain " and " */
                char *at_and = strstr(s, " and ");
@@ -2547,7 +2550,7 @@
            wchar_t *target = calloc(1 + needed, sizeof(wchar_t));
            memset(&state, 0, sizeof(state));
            source = value;
-           if (mbsrtowcs(target, &source, length, &state) == needed) {
+           if (mbsrtowcs(target, &source, needed, &state) == needed) {
                size_t n2;
                result = 0;
                for (n2 = 0; n2 < needed; ++n2) {
@@ -2647,7 +2650,6 @@
 show_data(const DATA * p)
 {
     const char *name = data_filename(p);
-    int width;
 
     if (summary_only) {
        ;
@@ -2676,6 +2678,8 @@
     } else if (names_only) {
        printf("%s\n", name);
     } else {
+       int width;
+
        printf("%s ", comment_opt);
        if (max_name_wide > 0
            && max_name_wide < min_name_wide
@@ -2748,7 +2752,7 @@
 {
     size_t result = 0;
     char *mark = strrchr(path, PATHSEP);
-    if (mark != 0 && mark != path)
+    if (mark != NULL && mark != path)
        result = (size_t) (mark + 1 - path);
     return result;
 }
@@ -2796,14 +2800,14 @@
     if (is_dir(pathname)) {
        DIR *dp = opendir(pathname);
 
-       if (dp != 0) {
+       if (dp != NULL) {
            const struct dirent *de;
 
-           while ((de = readdir(dp)) != 0) {
+           while ((de = readdir(dp)) != NULL) {
                if (!strcmp(de->d_name, ".") || !strcmp(de->d_name, ".."))
                    continue;
                name = xmalloc(strlen(pathname) + 2 + strlen(de->d_name));
-               if (name != 0) {
+               if (name != NULL) {
                    sprintf(name, "%s%c%s", pathname, PATHSEP, de->d_name);
                    if ((strcmp(de->d_name, ".git")
                         && strcmp(de->d_name, ".svn")
@@ -2825,7 +2829,7 @@
        const char *ref_name = ((all_data && !unchanged)
                                ? all_data->modified
                                : pathname);
-       char *source = 0;
+       char *source = NULL;
 
        if (ref_name == NULL)
            return;
@@ -2867,7 +2871,7 @@
        if (same_file(source, pathname)) {
            int found = 0;
 
-           for (p = all_data; p != 0 && !found; p = p->link) {
+           for (p = all_data; p != NULL && !found; p = p->link) {
                if (!strcmp(name, p->modified)) {
                    found = 1;
                }
@@ -3004,7 +3008,7 @@
                InsOf(p) = save_del;
                DelOf(p) = save_ins;
            }
-           if (path_opt != 0) {
+           if (path_opt != NULL) {
                int count = count_lines(p);
 
                if (count >= 0) {
@@ -3032,8 +3036,8 @@
     update_min_name_wide(longest_name);
 
 #ifdef HAVE_OPENDIR
-    if (S_option != 0 && D_option != 0) {
-       unchanged = (all_data == 0);
+    if (S_option != NULL && D_option != NULL) {
+       unchanged = (all_data == NULL);
        count_unmodified_files(D_option, &files_equal, &total_eql);
        if (unchanged) {
            for (p = all_data; p; p = p->link) {
@@ -3100,7 +3104,7 @@
                printf(", %ld deletion%s(-)", PLURAL(total_del));
            if (total_mod)
                printf(", %ld modification%s(!)", PLURAL(total_mod));
-           if (total_eql && path_opt != 0)
+           if (total_eql && path_opt != NULL)
                printf(", %ld unchanged line%s(=)", PLURAL(total_eql));
            if (count_files) {
                if (files_added)
@@ -3120,7 +3124,7 @@
 get_program(const char *name, const char *dft)
 {
     const char *result = getenv(name);
-    if (result == 0 || *result == EOS)
+    if (result == NULL || *result == EOS)
        result = dft;
     TRACE(("get_program(%s) = %s\n", name, result));
     return result;
@@ -3130,9 +3134,9 @@
 static char *
 decompressor(Decompress which, const char *name)
 {
-    const char *verb = 0;
+    const char *verb = NULL;
     const char *opts = "";
-    char *result = 0;
+    char *result = NULL;
 
     switch (which) {
     case dcBzip:
@@ -3178,7 +3182,7 @@
     case dcNone:
        break;
     }
-    if (verb != 0 && *verb != EOS) {
+    if (verb != NULL && *verb != EOS) {
        result = (char *) xmalloc(strlen(verb) + 10 + strlen(name));
        sprintf(result, "%s %s", verb, opts);
        if (*name != EOS) {
@@ -3243,21 +3247,21 @@
 copy_stdin(char **dirpath)
 {
     const char *tmp = getenv("TMPDIR");
-    char *result = 0;
-    if (tmp == 0)
+    char *result = NULL;
+    if (tmp == NULL)
        tmp = "/tmp/";
     *dirpath = xmalloc(strlen(tmp) + 12);
 
     strcpy(*dirpath, tmp);
     strcat(*dirpath, "/diffXXXXXX");
 
-    if (MY_MKDTEMP(*dirpath) != 0) {
+    if (MY_MKDTEMP(*dirpath) != NULL) {
        FILE *fp;
 
        result = xmalloc(strlen(*dirpath) + 10);
        sprintf(result, "%s/stdin", *dirpath);
 
-       if ((fp = fopen(result, "w")) != 0) {
+       if ((fp = fopen(result, "w")) != NULL) {
            int ch;
 
            while ((ch = MY_GETC(stdin)) != EOF) {
@@ -3266,14 +3270,14 @@
            (void) fclose(fp);
        } else {
            free(result);
-           result = 0;
+           result = NULL;
            rmdir(*dirpath);    /* Assume that the /stdin file was not created 
*/
            free(*dirpath);
-           *dirpath = 0;
+           *dirpath = NULL;
        }
     } else {
        free(*dirpath);
-       *dirpath = 0;
+       *dirpath = NULL;
     }
     return result;
 }
@@ -3344,7 +3348,7 @@
        fprintf(fp, "%s\n", msg[j]);
 }
 
-/* Wrapper around getopt that also parses "--help" and "--version".  
+/* Wrapper around getopt that also parses "--help" and "--version".
  * argc, argv, opts, return value, and globals optarg, optind,
  * opterr, and optopt are as in getopt().  help and version designate
  * what should be returned if --help or --version are encountered. */
@@ -3367,9 +3371,9 @@
 static int
 getopt_value(void)
 {
-    char *next = 0;
+    char *next = NULL;
     long value = strtol(optarg, &next, 0);
-    if (next == 0 || *next != EOS) {
+    if (next == NULL || *next != EOS) {
        (void) fflush(stdout);
        fprintf(stderr, "expected a number, have '%s'\n", optarg);
        exit(EXIT_FAILURE);
@@ -3437,7 +3441,7 @@
            D_option = optarg;
            break;
        case 'e':
-           if (freopen(optarg, "w", stderr) == 0)
+           if (freopen(optarg, "w", stderr) == NULL)
                failed(optarg);
            break;
        case 'E':
@@ -3468,7 +3472,7 @@
            max_name_wide = getopt_value();
            break;
        case 'o':
-           if (freopen(optarg, "w", stdout) == 0)
+           if (freopen(optarg, "w", stdout) == NULL)
                failed(optarg);
            break;
        case 'p':
@@ -3541,8 +3545,8 @@
            const char *name = argv[optind++];
 #ifdef HAVE_POPEN
            char *command = is_compressed(name);
-           if (command != 0) {
-               if ((fp = popen(command, "r")) != 0) {
+           if (command != NULL) {
+               if ((fp = popen(command, "r")) != NULL) {
                    if (show_progress) {
                        (void) fflush(stdout);
                        (void) fprintf(stderr, "%s\n", name);
@@ -3554,7 +3558,7 @@
                free(command);
            } else
 #endif
-           if ((fp = fopen(name, "rb")) != 0) {
+           if ((fp = fopen(name, "rb")) != NULL) {
                if (show_progress) {
                    (void) fflush(stdout);
                    (void) fprintf(stderr, "%s\n", name);
@@ -3569,7 +3573,7 @@
     } else {
 #ifdef HAVE_POPEN
        Decompress which = dcEmpty;
-       char *stdin_dir = 0;
+       char *stdin_dir = NULL;
        char *myfile;
        char sniff[8];
        int ch;
@@ -3648,17 +3652,17 @@
         * virtually everyone allows more.
         */
        while (got != 0) {
-           ungetc(sniff[--got], stdin);
+           ungetc((unsigned char) sniff[--got], stdin);
        }
        if (which != dcNone
            && which != dcEmpty
-           && (myfile = copy_stdin(&stdin_dir)) != 0) {
+           && (myfile = copy_stdin(&stdin_dir)) != NULL) {
            FILE *fp;
            char *command;
 
            /* open pipe to decompress temporary file */
            command = decompressor(which, myfile);
-           if ((fp = popen(command, "r")) != 0) {
+           if ((fp = popen(command, "r")) != NULL) {
                do_file(fp, "stdin");
                (void) pclose(fp);
            }
@@ -3666,10 +3670,10 @@
 
            unlink(myfile);
            free(myfile);
-           myfile = 0;
+           myfile = NULL;
            rmdir(stdin_dir);
            free(stdin_dir);
-           stdin_dir = 0;
+           stdin_dir = NULL;
        } else if (which != dcEmpty)
 #endif
            do_file(stdin, "stdin");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/diffstat-1.67/package/debian/changelog 
new/diffstat-1.68/package/debian/changelog
--- old/diffstat-1.67/package/debian/changelog  2024-11-11 16:57:43.000000000 
+0100
+++ new/diffstat-1.68/package/debian/changelog  2025-04-24 21:26:25.000000000 
+0200
@@ -1,3 +1,9 @@
+diffstat (1.68) unstable; urgency=low
+
+  * maintenance updates
+
+ -- Thomas E. Dickey <[email protected]>  Thu, 24 Apr 2025 15:26:21 
-0400
+
 diffstat (1.67) unstable; urgency=low
 
   * maintenance updates
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/diffstat-1.67/package/debian/copyright 
new/diffstat-1.68/package/debian/copyright
--- old/diffstat-1.67/package/debian/copyright  2024-11-11 13:08:18.000000000 
+0100
+++ new/diffstat-1.68/package/debian/copyright  2025-04-24 21:28:05.000000000 
+0200
@@ -1,7 +1,7 @@
 Upstream source http://invisible-island.net/diffstat/diffstat.html
 
 /******************************************************************************
- * Copyright 1994-2023,2024 by Thomas E. Dickey                               *
+ * Copyright 1994-2024,2025 by Thomas E. Dickey                               *
  *                                                                            *
  * Permission is hereby granted, free of charge, to any person obtaining a    *
  * copy of this software and associated documentation files (the "Software"), *
@@ -65,7 +65,7 @@
     shared with many OS's install programs.
 
 Files: debian/*
-Copyright:  2010-2021,2024 Thomas E. Dickey
+Copyright:  2010-2024,2025 Thomas E. Dickey
 Licence: other-BSD
     Permission is hereby granted, free of charge, to any person obtaining a
     copy of this software and associated documentation files (the "Software"),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/diffstat-1.67/package/diffstat.spec new/diffstat-1.68/package/diffstat.spec
--- old/diffstat-1.67/package/diffstat.spec     2024-11-11 17:08:57.000000000 
+0100
+++ new/diffstat-1.68/package/diffstat.spec     2025-04-24 21:25:35.000000000 
+0200
@@ -1,7 +1,7 @@
 Summary:  Make histogram from diff-output
 %define AppProgram diffstat
-%define AppVersion 1.67
-# $XTermId: diffstat.spec,v 1.21 2024/11/11 16:08:57 tom Exp $
+%define AppVersion 1.68
+# $XTermId: diffstat.spec,v 1.22 2025/04/24 19:25:35 tom Exp $
 Name: %{AppProgram}
 Version: %{AppVersion}
 Release: 1

Reply via email to