Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package mpg123 for openSUSE:Factory checked in at 2026-06-09 14:11:55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mpg123 (Old) and /work/SRC/openSUSE:Factory/.mpg123.new.2375 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mpg123" Tue Jun 9 14:11:55 2026 rev:51 rq:1357664 version:1.33.6 Changes: -------- --- /work/SRC/openSUSE:Factory/mpg123/mpg123.changes 2026-04-28 11:54:24.816622446 +0200 +++ /work/SRC/openSUSE:Factory/.mpg123.new.2375/mpg123.changes 2026-06-09 14:11:59.951946074 +0200 @@ -1,0 +2,18 @@ +Sat Jun 6 10:33:16 UTC 2026 - Luigi Baldoni <[email protected]> + +- Update to version 1.33.6 + * mpg123 + + Prepare for const-returning strchr(). + + Hide seq_len debugging counter in non-debug mode. + + Fix memory leak with --network internal due to inverted NULL + check in net123_close_internal() (handle never NULL in + practice, though). + * mpg123, out123: Fix strrchr() usage to be more const and + correct under C99 as well as C23. + * mpg123-strip: Also use largefile API properly using + mpg123config.h, but without actual effect at least on + Linux/x86. It is cleaner that way, though. + * libmpg123: Remove unused loop variable in layer2 left over + from runtime table elimination (32 bit mmx/sse code). + +------------------------------------------------------------------- Old: ---- mpg123-1.33.5.tar.bz2 mpg123-1.33.5.tar.bz2.sig New: ---- mpg123-1.33.6.tar.bz2 mpg123-1.33.6.tar.bz2.sig ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mpg123.spec ++++++ --- /var/tmp/diff_new_pack.5DbvPJ/_old 2026-06-09 14:12:01.015990197 +0200 +++ /var/tmp/diff_new_pack.5DbvPJ/_new 2026-06-09 14:12:01.015990197 +0200 @@ -18,7 +18,7 @@ %define sover 0 Name: mpg123 -Version: 1.33.5 +Version: 1.33.6 Release: 0 Summary: Console MPEG audio player and decoder library License: LGPL-2.1-only ++++++ mpg123-1.33.5.tar.bz2 -> mpg123-1.33.6.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/NEWS new/mpg123-1.33.6/NEWS --- old/mpg123-1.33.5/NEWS 2026-04-25 10:59:35.000000000 +0200 +++ new/mpg123-1.33.6/NEWS 2026-06-06 10:41:01.000000000 +0200 @@ -1,3 +1,19 @@ +1.33.6 +------ +- mpg123 +-- Prepare for const-returning strchr(). +-- Hide seq_len debugging counter in non-debug mode (handle github PR 20). +-- Fix memory leak with --network internal due to inverted NULL check in + net123_close_internal() (handle never NULL in practice, though; bug 386). +- mpg123, out123: Fix strrchr() usage to be more const and correct under C99 as well + as C23 (handles PR 19 on the github mirror). +- mpg123-strip: Also use largefile API properly using mpg123config.h, but without + actual effect at least on Linux/x86. It is cleaner that way, though. +- ports/cmake: Yasm is not neeeded for Clang on MSVC (github PR 23, thanks to Alexander + Lobakin). +- libmpg123: Remove unused loop variable in layer2 left over from runtime table + elimination (32 bit mmx/sse code, prompted by github PR 22). + 1.33.5 ------ - mpg123: Fix generic control mode for largefile-sensitive builds, where 32 bit diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/configure new/mpg123-1.33.6/configure --- old/mpg123-1.33.5/configure 2026-04-25 11:07:41.000000000 +0200 +++ new/mpg123-1.33.6/configure 2026-06-06 10:43:10.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.71 for mpg123 1.33.5. +# Generated by GNU Autoconf 2.71 for mpg123 1.33.6. # # Report bugs to <[email protected]>. # @@ -621,8 +621,8 @@ # Identity of this package. PACKAGE_NAME='mpg123' PACKAGE_TARNAME='mpg123' -PACKAGE_VERSION='1.33.5' -PACKAGE_STRING='mpg123 1.33.5' +PACKAGE_VERSION='1.33.6' +PACKAGE_STRING='mpg123 1.33.6' PACKAGE_BUGREPORT='[email protected]' PACKAGE_URL='' @@ -1727,7 +1727,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures mpg123 1.33.5 to adapt to many kinds of systems. +\`configure' configures mpg123 1.33.6 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1798,7 +1798,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of mpg123 1.33.5:";; + short | recursive ) echo "Configuration of mpg123 1.33.6:";; esac cat <<\_ACEOF @@ -2077,7 +2077,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -mpg123 configure 1.33.5 +mpg123 configure 1.33.6 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -2622,7 +2622,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by mpg123 $as_me 1.33.5, which was +It was created by mpg123 $as_me 1.33.6, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -3992,7 +3992,7 @@ # Define the identity of the package. PACKAGE='mpg123' - VERSION='1.33.5' + VERSION='1.33.6' printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h @@ -22468,7 +22468,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by mpg123 $as_me 1.33.5, which was +This file was extended by mpg123 $as_me 1.33.6, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -22536,7 +22536,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -mpg123 config.status 1.33.5 +mpg123 config.status 1.33.6 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/mpg123.spec new/mpg123-1.33.6/mpg123.spec --- old/mpg123-1.33.5/mpg123.spec 2026-04-25 11:08:28.000000000 +0200 +++ new/mpg123-1.33.6/mpg123.spec 2026-06-06 10:43:57.000000000 +0200 @@ -3,7 +3,7 @@ # - devel packages for alsa, sdl, etc... to build the respective output modules. Summary: The fast console mpeg audio decoder/player. Name: mpg123 -Version: 1.33.5 +Version: 1.33.6 Release: 1 URL: http://www.mpg123.org/ License: GPL diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/ports/cmake/src/libmpg123/CMakeLists.txt new/mpg123-1.33.6/ports/cmake/src/libmpg123/CMakeLists.txt --- old/mpg123-1.33.5/ports/cmake/src/libmpg123/CMakeLists.txt 2026-04-25 10:59:35.000000000 +0200 +++ new/mpg123-1.33.6/ports/cmake/src/libmpg123/CMakeLists.txt 2026-06-06 10:39:42.000000000 +0200 @@ -64,7 +64,7 @@ "${CMAKE_CURRENT_SOURCE_DIR}/../../../../src/libmpg123/$<$<NOT:$<BOOL:${PORTABLE_API}>>:lfs_wrap.c>" $<TARGET_OBJECTS:compat>) -if(MSVC) +if(MSVC AND NOT CMAKE_C_COMPILER_ID STREQUAL "Clang") if(MACHINE MATCHES "x86|amd64") find_program(YASM_ASSEMBLER yasm) if(NOT YASM_ASSEMBLER) @@ -214,7 +214,7 @@ $<$<BOOL:${HAVE_FPU}>:REAL_IS_FLOAT> $<$<NOT:$<BOOL:${HAVE_FPU}>>:REAL_IS_FIXED>) -if(MSVC AND MACHINE MATCHES "x86|amd64" AND YASM_ASSEMBLER) +if(MSVC AND NOT CMAKE_C_COMPILER_ID STREQUAL "Clang" AND MACHINE MATCHES "x86|amd64" AND YASM_ASSEMBLER) list(TRANSFORM PLATFORM_DEFINITIONS PREPEND /D) foreach(FILE ${PLATFORM_SOURCES}) get_filename_component(FILENAME ${FILE} NAME) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/src/httpget.c new/mpg123-1.33.6/src/httpget.c --- old/mpg123-1.33.5/src/httpget.c 2026-04-25 10:59:35.000000000 +0200 +++ new/mpg123-1.33.6/src/httpget.c 2026-06-06 10:39:41.000000000 +0200 @@ -118,7 +118,7 @@ int i,j; size_t len; int r = 0; - char *aux; + const char *aux; /* Watch out for such: "audio/x-mpegurl; charset=utf-8" */ aux = strchr(mime, ';'); if(aux != NULL) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/src/libmpg123/layer2.c new/mpg123-1.33.6/src/libmpg123/layer2.c --- old/mpg123-1.33.5/src/libmpg123/layer2.c 2026-04-25 10:59:35.000000000 +0200 +++ new/mpg123-1.33.6/src/libmpg123/layer2.c 2026-06-06 10:39:41.000000000 +0200 @@ -51,15 +51,15 @@ #ifdef OPT_MMXORSSE real* INT123_init_layer12_table_mmx(mpg123_handle *fr, real *table, int m) { - int i,j; + int i; if(!fr->p.down_sample) { - for(j=3,i=0;i<63;i++,j--) + for(i=0;i<63;i++) *table++ = 16384 * layer12_table[m][i]; } else { - for(j=3,i=0;i<63;i++,j--) + for(i=0;i<63;i++) *table++ = layer12_table[m][i]; } return table; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/src/mpg123-strip.c new/mpg123-1.33.6/src/mpg123-strip.c --- old/mpg123-1.33.5/src/mpg123-strip.c 2026-04-25 10:59:35.000000000 +0200 +++ new/mpg123-1.33.6/src/mpg123-strip.c 2026-06-06 10:39:41.000000000 +0200 @@ -6,13 +6,10 @@ initially written by Thomas Orgis */ -#include "config.h" +#include "mpg123config.h" #include "version.h" #include "compat/compat.h" -#if defined(WIN32) && defined(DYNAMIC_BUILD) -#define LINK_MPG123_DLL -#endif #include <mpg123.h> #include "getlopt.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/src/mpg123.c new/mpg123-1.33.6/src/mpg123.c --- old/mpg123-1.33.5/src/mpg123.c 2026-04-25 10:59:35.000000000 +0200 +++ new/mpg123-1.33.6/src/mpg123.c 2026-06-06 10:39:41.000000000 +0200 @@ -291,7 +291,7 @@ void safe_exit(int code) { - char *dummy, *dammy; + const char *dummy, *dammy; dump_close(); if(!code) @@ -1323,7 +1323,7 @@ while ((fname = get_next_file())) { - char *dirname, *filename; + const char *dirname, *filename; int newdir; /* skip_tracks includes the previous one. */ if(skip_tracks) --skip_tracks; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/src/out123.c new/mpg123-1.33.6/src/out123.c --- old/mpg123-1.33.5/src/out123.c 2026-04-25 10:59:35.000000000 +0200 +++ new/mpg123-1.33.6/src/out123.c 2026-06-06 10:39:41.000000000 +0200 @@ -207,7 +207,7 @@ static void safe_exit(int code) { - char *dummy, *dammy; + const char *dummy, *dammy; if(input && input != stdin) INT123_compat_fclose(input); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/src/streamdump.c new/mpg123-1.33.6/src/streamdump.c --- old/mpg123-1.33.5/src/streamdump.c 2026-04-25 10:59:35.000000000 +0200 +++ new/mpg123-1.33.6/src/streamdump.c 2026-06-06 10:41:01.000000000 +0200 @@ -70,7 +70,7 @@ static void net123_close_internal(struct net123_handle_struct *nh) { - if(nh) + if(!nh) return; int *fdp = nh->parts; #ifdef WANT_WIN32_SOCKETS diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/src/sysutil.c new/mpg123-1.33.6/src/sysutil.c --- old/mpg123-1.33.5/src/sysutil.c 2026-04-25 10:59:35.000000000 +0200 +++ new/mpg123-1.33.6/src/sysutil.c 2026-06-06 10:39:41.000000000 +0200 @@ -33,7 +33,7 @@ size_t dir_length(const char *path) { - char * slashpos = strrchr(path, '/'); + const char * slashpos = strrchr(path, '/'); return (slashpos ? slashpos-path : 0); } @@ -48,32 +48,33 @@ * is different from the previous one (if any). */ -int split_dir_file (const char *path, char **dname, char **fname) +int split_dir_file (const char *path, const char **dname, const char **fname) { static char *lastdir = NULL; - char *slashpos; + static size_t lastlen = 0; + size_t dlen = dir_length(path); - if ((slashpos = strrchr(path, '/'))) { - *fname = slashpos + 1; - *dname = INT123_compat_strdup(path); /* , 1 + slashpos - path); */ - if(!(*dname)) { - perror("failed to allocate memory for dir name"); - return 0; - } - (*dname)[1 + slashpos - path] = 0; - if (lastdir && !strcmp(lastdir, *dname)) { + if (dlen) { + *fname = path + dlen + 1; // a one-byte separator is implied + if (lastdir && dlen == lastlen && !strncmp(lastdir, path, dlen)) { /*** same as previous directory ***/ - free (*dname); *dname = lastdir; return 0; } - else { - /*** different directory ***/ - if (lastdir) - free (lastdir); - lastdir = *dname; - return 1; + // a temporary pointer to be able to modify the string before const + // Care to optimize that strdup to only copy directory part? + char *pre_dname = INT123_compat_strdup(path); /* , 1 + slashpos - path); */ + *dname = pre_dname; + if(!(*dname)) { + perror("failed to allocate memory for dir name"); + return 0; } + pre_dname[dlen+1] = 0; // keep separator (or not?) + if (lastdir) + free (lastdir); + lastdir = pre_dname; + lastlen = dlen; + return 1; } else { /*** no directory specified ***/ @@ -81,8 +82,9 @@ free (lastdir); lastdir = NULL; }; + lastlen = 0; *dname = NULL; - *fname = (char *)path; + *fname = path; return 0; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/src/sysutil.h new/mpg123-1.33.6/src/sysutil.h --- old/mpg123-1.33.5/src/sysutil.h 2026-04-25 10:59:35.000000000 +0200 +++ new/mpg123-1.33.6/src/sysutil.h 2026-06-06 10:39:41.000000000 +0200 @@ -9,7 +9,7 @@ #ifndef _MPG123_SYSUTIL_H_ #define _MPG123_SYSUTIL_H_ -int split_dir_file(const char *path, char **dname, char **fname); +int split_dir_file(const char *path, const char **dname, const char **fname); /* Length of directory part in given path. */ size_t dir_length(const char *path); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/src/term.c new/mpg123-1.33.6/src/term.c --- old/mpg123-1.33.5/src/term.c 2026-04-25 10:59:35.000000000 +0200 +++ new/mpg123-1.33.6/src/term.c 2026-06-06 10:39:41.000000000 +0200 @@ -586,6 +586,14 @@ } } +#ifdef DEBUG +#define SEQ_INIT int seq_len = 1 +#define SEQ_INCR ++seq_len +#else +#define SEQ_INIT +#define SEQ_INCR +#endif + static void term_handle_input(mpg123_handle *fr, out123_handle *ao, int do_delay) { char val; @@ -601,16 +609,16 @@ // back for real control. if(val == 0x1b) // ESC, get next key, if any { - int seq_len = 1; + SEQ_INIT; if(term_get_key(FALSE, -1, &val)) { - ++seq_len; + SEQ_INCR; if(val == 'Z') // SCI, single character to drop, if any term_get_key(FALSE, -1, &val); else if(val == '[') // sequence begin { while(term_get_key(FALSE, -1, &val) && strchr("0123456789;", val)) - ++seq_len; + SEQ_INCR; } // else simple single-character escape } mdebug("dropped escape sequence of length %d", seq_len); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mpg123-1.33.5/src/version.h new/mpg123-1.33.6/src/version.h --- old/mpg123-1.33.5/src/version.h 2026-04-25 11:05:58.000000000 +0200 +++ new/mpg123-1.33.6/src/version.h 2026-06-06 10:42:49.000000000 +0200 @@ -16,7 +16,7 @@ // only single spaces as separator to ease parsing by build scripts #define MPG123_MAJOR 1 #define MPG123_MINOR 33 -#define MPG123_PATCH 5 +#define MPG123_PATCH 6 // Don't get too wild with that to avoid confusing m4. No brackets. // Also, it should fit well into a sane file name for the tarball. #define MPG123_SUFFIX ""
