Hello community, here is the log from the commit of package libopenmpt for openSUSE:Factory checked in at 2018-11-06 13:56:41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libopenmpt (Old) and /work/SRC/openSUSE:Factory/.libopenmpt.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libopenmpt" Tue Nov 6 13:56:41 2018 rev:13 rq:643804 version:0.3.13 Changes: -------- --- /work/SRC/openSUSE:Factory/libopenmpt/libopenmpt.changes 2018-10-02 19:43:27.362074352 +0200 +++ /work/SRC/openSUSE:Factory/.libopenmpt.new/libopenmpt.changes 2018-11-06 13:56:48.656054098 +0100 @@ -1,0 +2,14 @@ +Mon Oct 22 20:27:59 UTC 2018 - Martin Herkt <[email protected]> + +- Update to version 0.3.13: + * [Sec] Crash with malformed MED files. + * Transposed samples in AMF ASYLUM modules were not played + correctly. + * Notes triggered by libopenmpt_ext play_note could be played + with a panbrello effect if the same virtual channel was + previously used with panbrello. + * Clicks when stopping channels that didn’t end at zero volume. + * XM: Do not import non-standard commands N and M as channel + volume commands. + +------------------------------------------------------------------- Old: ---- libopenmpt-0.3.12+release.autotools.tar.gz New: ---- libopenmpt-0.3.13+release.autotools.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libopenmpt.spec ++++++ --- /var/tmp/diff_new_pack.zmRiWI/_old 2018-11-06 13:56:49.824052501 +0100 +++ /var/tmp/diff_new_pack.zmRiWI/_new 2018-11-06 13:56:49.832052490 +0100 @@ -12,7 +12,7 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # @@ -21,7 +21,7 @@ %define libopenmpt_modplug libopenmpt_modplug1 %bcond_without mpg123 Name: libopenmpt -Version: 0.3.12 +Version: 0.3.13 Release: 0 Summary: C++ and C library to decode tracker music files License: BSD-3-Clause ++++++ libopenmpt-0.3.12+release.autotools.tar.gz -> libopenmpt-0.3.13+release.autotools.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libopenmpt-0.3.12+release.autotools/common/versionNumber.h new/libopenmpt-0.3.13+release.autotools/common/versionNumber.h --- old/libopenmpt-0.3.12+release.autotools/common/versionNumber.h 2018-09-23 20:48:04.000000000 +0200 +++ new/libopenmpt-0.3.13+release.autotools/common/versionNumber.h 2018-10-21 16:08:57.000000000 +0200 @@ -18,7 +18,7 @@ //Version definitions. The only thing that needs to be changed when changing version number. #define VER_MAJORMAJOR 1 #define VER_MAJOR 27 -#define VER_MINOR 10 +#define VER_MINOR 11 #define VER_MINORMINOR 00 //Version string. For example "1.17.02.28" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libopenmpt-0.3.12+release.autotools/configure new/libopenmpt-0.3.13+release.autotools/configure --- old/libopenmpt-0.3.12+release.autotools/configure 2018-09-24 08:51:40.000000000 +0200 +++ new/libopenmpt-0.3.13+release.autotools/configure 2018-10-21 16:18:33.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for libopenmpt 0.3.12+release.autotools. +# Generated by GNU Autoconf 2.69 for libopenmpt 0.3.13+release.autotools. # # Report bugs to <https://bugs.openmpt.org/>. # @@ -590,8 +590,8 @@ # Identity of this package. PACKAGE_NAME='libopenmpt' PACKAGE_TARNAME='libopenmpt' -PACKAGE_VERSION='0.3.12+release.autotools' -PACKAGE_STRING='libopenmpt 0.3.12+release.autotools' +PACKAGE_VERSION='0.3.13+release.autotools' +PACKAGE_STRING='libopenmpt 0.3.13+release.autotools' PACKAGE_BUGREPORT='https://bugs.openmpt.org/' PACKAGE_URL='https://lib.openmpt.org/' @@ -1482,7 +1482,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 libopenmpt 0.3.12+release.autotools to adapt to many kinds of systems. +\`configure' configures libopenmpt 0.3.13+release.autotools to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1553,7 +1553,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libopenmpt 0.3.12+release.autotools:";; + short | recursive ) echo "Configuration of libopenmpt 0.3.13+release.autotools:";; esac cat <<\_ACEOF @@ -1753,7 +1753,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libopenmpt configure 0.3.12+release.autotools +libopenmpt configure 0.3.13+release.autotools generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2152,7 +2152,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libopenmpt $as_me 0.3.12+release.autotools, which was +It was created by libopenmpt $as_me 0.3.13+release.autotools, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3023,7 +3023,7 @@ # Define the identity of the package. PACKAGE='libopenmpt' - VERSION='0.3.12+release.autotools' + VERSION='0.3.13+release.autotools' cat >>confdefs.h <<_ACEOF @@ -17187,13 +17187,13 @@ -$as_echo "#define MPT_SVNURL \"https://source.openmpt.org/svn/openmpt/tags/libopenmpt-0.3.12\"" >>confdefs.h +$as_echo "#define MPT_SVNURL \"https://source.openmpt.org/svn/openmpt/tags/libopenmpt-0.3.13\"" >>confdefs.h -$as_echo "#define MPT_SVNVERSION \"10856\"" >>confdefs.h +$as_echo "#define MPT_SVNVERSION \"10931\"" >>confdefs.h -$as_echo "#define MPT_SVNDATE \"2018-09-24T06:42:52.921590Z\"" >>confdefs.h +$as_echo "#define MPT_SVNDATE \"2018-10-21T14:14:31.914995Z\"" >>confdefs.h $as_echo "#define MPT_PACKAGE true" >>confdefs.h @@ -22376,7 +22376,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libopenmpt $as_me 0.3.12+release.autotools, which was +This file was extended by libopenmpt $as_me 0.3.13+release.autotools, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -22443,7 +22443,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -libopenmpt config.status 0.3.12+release.autotools +libopenmpt config.status 0.3.13+release.autotools configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libopenmpt-0.3.12+release.autotools/configure.ac new/libopenmpt-0.3.13+release.autotools/configure.ac --- old/libopenmpt-0.3.12+release.autotools/configure.ac 2018-09-24 08:51:30.000000000 +0200 +++ new/libopenmpt-0.3.13+release.autotools/configure.ac 2018-10-21 16:18:22.000000000 +0200 @@ -1,4 +1,4 @@ -AC_INIT([libopenmpt], [0.3.12+release.autotools], [https://bugs.openmpt.org/], [libopenmpt], [https://lib.openmpt.org/]) +AC_INIT([libopenmpt], [0.3.13+release.autotools], [https://bugs.openmpt.org/], [libopenmpt], [https://lib.openmpt.org/]) AC_PREREQ([2.68]) AC_CONFIG_MACRO_DIR([m4]) @@ -27,9 +27,9 @@ AC_SUBST([LIBOPENMPT_LTVER_REVISION]) AC_SUBST([LIBOPENMPT_LTVER_AGE]) -AC_DEFINE([MPT_SVNURL], ["https://source.openmpt.org/svn/openmpt/tags/libopenmpt-0.3.12"], [svn version]) -AC_DEFINE([MPT_SVNVERSION], ["10856"], [svn version]) -AC_DEFINE([MPT_SVNDATE], ["2018-09-24T06:42:52.921590Z"], [svn date]) +AC_DEFINE([MPT_SVNURL], ["https://source.openmpt.org/svn/openmpt/tags/libopenmpt-0.3.13"], [svn version]) +AC_DEFINE([MPT_SVNVERSION], ["10931"], [svn version]) +AC_DEFINE([MPT_SVNDATE], ["2018-10-21T14:14:31.914995Z"], [svn date]) AC_DEFINE([MPT_PACKAGE], [true], [is package]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libopenmpt-0.3.12+release.autotools/libopenmpt/dox/changelog.md new/libopenmpt-0.3.13+release.autotools/libopenmpt/dox/changelog.md --- old/libopenmpt-0.3.12+release.autotools/libopenmpt/dox/changelog.md 2018-09-24 08:41:35.000000000 +0200 +++ new/libopenmpt-0.3.13+release.autotools/libopenmpt/dox/changelog.md 2018-10-21 16:13:54.000000000 +0200 @@ -5,6 +5,16 @@ For fully detailed change log, please see the source repository directly. This is just a high-level summary. +### libopenmpt 0.3.13 (2018-10-21) + + * [**Sec**] Crash with malformed MED files (r10904). + + * Transposed samples in AMF ASYLUM modules were not played correctly. + * Notes triggered by libopenmpt_ext play_note could be played with a panbrello + effect if the same virtual channel was previously used with panbrello. + * Clicks when stopping channels that didn't end at zero volume. + * XM: Do not import non-standard commands N and M as channel volume commands. + ### libopenmpt 0.3.12 (2018-09-24) * [**Bug**] openmpt123: Prevent libsdl2 and libsdl from being enabled at the diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libopenmpt-0.3.12+release.autotools/libopenmpt/libopenmpt_version.h new/libopenmpt-0.3.13+release.autotools/libopenmpt/libopenmpt_version.h --- old/libopenmpt-0.3.12+release.autotools/libopenmpt/libopenmpt_version.h 2018-09-24 08:41:35.000000000 +0200 +++ new/libopenmpt-0.3.13+release.autotools/libopenmpt/libopenmpt_version.h 2018-10-21 16:13:54.000000000 +0200 @@ -19,7 +19,7 @@ /*! \brief libopenmpt minor version number */ #define OPENMPT_API_VERSION_MINOR 3 /*! \brief libopenmpt patch version number */ -#define OPENMPT_API_VERSION_PATCH 12 +#define OPENMPT_API_VERSION_PATCH 13 /*! \brief libopenmpt pre-release tag */ #define OPENMPT_API_VERSION_PREREL "" /*! \brief libopenmpt pre-release flag */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libopenmpt-0.3.12+release.autotools/libopenmpt/libopenmpt_version.mk new/libopenmpt-0.3.13+release.autotools/libopenmpt/libopenmpt_version.mk --- old/libopenmpt-0.3.12+release.autotools/libopenmpt/libopenmpt_version.mk 2018-09-24 08:41:35.000000000 +0200 +++ new/libopenmpt-0.3.13+release.autotools/libopenmpt/libopenmpt_version.mk 2018-10-21 16:13:54.000000000 +0200 @@ -1,8 +1,8 @@ LIBOPENMPT_VERSION_MAJOR=0 LIBOPENMPT_VERSION_MINOR=3 -LIBOPENMPT_VERSION_PATCH=12 +LIBOPENMPT_VERSION_PATCH=13 LIBOPENMPT_VERSION_PREREL= LIBOPENMPT_LTVER_CURRENT=1 -LIBOPENMPT_LTVER_REVISION=12 +LIBOPENMPT_LTVER_REVISION=13 LIBOPENMPT_LTVER_AGE=1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libopenmpt-0.3.12+release.autotools/man/openmpt123.1 new/libopenmpt-0.3.13+release.autotools/man/openmpt123.1 --- old/libopenmpt-0.3.12+release.autotools/man/openmpt123.1 2018-09-24 08:51:30.000000000 +0200 +++ new/libopenmpt-0.3.13+release.autotools/man/openmpt123.1 2018-10-21 16:18:21.000000000 +0200 @@ -1,5 +1,5 @@ .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.47.4. -.TH OPENMPT123 "1" "September 2018" "openmpt123 v0.3.12" "User Commands" +.TH OPENMPT123 "1" "October 2018" "openmpt123 v0.3.13" "User Commands" .SH NAME openmpt123 - command line module music player based on libopenmpt .SH SYNOPSIS diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libopenmpt-0.3.12+release.autotools/soundlib/Load_med.cpp new/libopenmpt-0.3.13+release.autotools/soundlib/Load_med.cpp --- old/libopenmpt-0.3.12+release.autotools/soundlib/Load_med.cpp 2018-02-19 00:49:59.000000000 +0100 +++ new/libopenmpt-0.3.13+release.autotools/soundlib/Load_med.cpp 2018-10-12 22:59:54.000000000 +0200 @@ -771,8 +771,8 @@ pdwTable = const_unaligned_ptr_be<uint32>(lpStream + dwSmplArr); for (uint32 iSmp=0; iSmp<m_nSamples; iSmp++) if (pdwTable[iSmp]) { - uint32 dwPos = pdwTable[iSmp]; - if ((dwPos >= dwMemLength) || (dwPos + sizeof(MMDSAMPLEHEADER) >= dwMemLength)) continue; + const uint32 dwPos = pdwTable[iSmp]; + if ((dwPos >= dwMemLength) || (dwPos + sizeof(MMDSAMPLEHEADER) >= dwMemLength) || !(loadFlags & loadSampleData)) continue; const MMDSAMPLEHEADER *psdh = (const MMDSAMPLEHEADER *)(lpStream + dwPos); uint32 len = psdh->length; #ifdef MED_LOG @@ -780,7 +780,7 @@ #endif if(dwPos + len + 6 > dwMemLength) len = 0; uint32 stype = psdh->type; - const char *psdata = (const char *)(lpStream + dwPos + 6); + FileReader chunk(mpt::byte_cast<mpt::const_byte_span>(mpt::as_span(lpStream + dwPos + 6, dwMemLength - dwPos - 6))); SampleIO sampleIO( SampleIO::_8bit, @@ -790,7 +790,7 @@ if (stype & 0x80) { - psdata += (stype & 0x20) ? 14 : 6; + chunk.Skip((stype & 0x20) ? 14 : 6); } else { if(stype & 0x10) @@ -805,11 +805,7 @@ } } Samples[iSmp + 1].nLength = len; - if(loadFlags & loadSampleData) - { - FileReader chunk(mpt::byte_cast<mpt::const_byte_span>(mpt::as_span(psdata, dwMemLength - dwPos - 6))); - sampleIO.ReadSample(Samples[iSmp + 1], chunk); - } + sampleIO.ReadSample(Samples[iSmp + 1], chunk); } // Reading patterns (blocks) if(!(loadFlags & loadPatternData)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libopenmpt-0.3.12+release.autotools/soundlib/Load_mod.cpp new/libopenmpt-0.3.13+release.autotools/soundlib/Load_mod.cpp --- old/libopenmpt-0.3.12+release.autotools/soundlib/Load_mod.cpp 2018-03-20 17:40:09.000000000 +0100 +++ new/libopenmpt-0.3.13+release.autotools/soundlib/Load_mod.cpp 2018-10-19 22:04:34.000000000 +0200 @@ -58,8 +58,6 @@ case 'H' - 55: m.command = CMD_GLOBALVOLSLIDE; break; case 'K' - 55: m.command = CMD_KEYOFF; break; case 'L' - 55: m.command = CMD_SETENVPOSITION; break; - case 'M' - 55: m.command = CMD_CHANNELVOLUME; break; // Wat. Luckily, MPT never allowed this to be entered in patterns... - case 'N' - 55: m.command = CMD_CHANNELVOLSLIDE; break; // Ditto. case 'P' - 55: m.command = CMD_PANNINGSLIDE; break; case 'R' - 55: m.command = CMD_RETRIG; break; case 'T' - 55: m.command = CMD_TREMOR; break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libopenmpt-0.3.12+release.autotools/soundlib/MixerLoops.cpp new/libopenmpt-0.3.13+release.autotools/soundlib/MixerLoops.cpp --- old/libopenmpt-0.3.12+release.autotools/soundlib/MixerLoops.cpp 2018-03-20 17:39:13.000000000 +0100 +++ new/libopenmpt-0.3.13+release.autotools/soundlib/MixerLoops.cpp 2018-10-07 21:37:15.000000000 +0200 @@ -22,6 +22,10 @@ #include "Sndfile.h" +#ifdef ENABLE_SSE2 +#include <emmintrin.h> +#endif + OPENMPT_NAMESPACE_BEGIN @@ -162,7 +166,6 @@ #ifdef ENABLE_SSE2 -#include <emmintrin.h> static void SSE2_StereoMixToFloat(const int32 *pSrc, float *pOut1, float *pOut2, uint32 nCount, const float _i2fc) { @@ -733,8 +736,8 @@ #endif rofs -= x_r; lofs -= x_l; - pBuffer[i*2] = x_r; - pBuffer[i*2+1] = x_l; + pBuffer[i*2] = rofs; + pBuffer[i*2+1] = lofs; } #ifndef MPT_INTMIXER @@ -821,8 +824,8 @@ #endif rofs -= x_r; lofs -= x_l; - pBuffer[i*2] += x_r; - pBuffer[i*2+1] += x_l; + pBuffer[i*2] += rofs; + pBuffer[i*2+1] += lofs; } #ifndef MPT_INTMIXER if(mpt::abs(rofs) < OFSTHRESHOLD) rofs = 0; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libopenmpt-0.3.12+release.autotools/soundlib/ModChannel.cpp new/libopenmpt-0.3.13+release.autotools/soundlib/ModChannel.cpp --- old/libopenmpt-0.3.12+release.autotools/soundlib/ModChannel.cpp 2017-09-24 09:24:38.000000000 +0200 +++ new/libopenmpt-0.3.13+release.autotools/soundlib/ModChannel.cpp 2018-10-02 21:02:05.000000000 +0200 @@ -40,6 +40,7 @@ proTrackerOffset = 0; lastZxxParam = 0xFF; isFirstTick = false; + rowCommand.Clear(); } if(resetMask & resetSetPosAdvanced) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libopenmpt-0.3.12+release.autotools/soundlib/Snd_fx.cpp new/libopenmpt-0.3.13+release.autotools/soundlib/Snd_fx.cpp --- old/libopenmpt-0.3.12+release.autotools/soundlib/Snd_fx.cpp 2018-09-21 21:47:17.000000000 +0200 +++ new/libopenmpt-0.3.13+release.autotools/soundlib/Snd_fx.cpp 2018-09-30 20:33:33.000000000 +0200 @@ -1720,7 +1720,7 @@ } } - if(GetType() & (MOD_TYPE_XM|MOD_TYPE_MT2|MOD_TYPE_MED|MOD_TYPE_MOD)) + if(UseFinetuneAndTranspose()) { note += pChn->nTranspose; // RealNote = PatternNote + RelativeTone; (0..118, 0 = C-0, 118 = A#9) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libopenmpt-0.3.12+release.autotools/soundlib/modcommand.cpp new/libopenmpt-0.3.13+release.autotools/soundlib/modcommand.cpp --- old/libopenmpt-0.3.12+release.autotools/soundlib/modcommand.cpp 2017-10-03 19:51:04.000000000 +0200 +++ new/libopenmpt-0.3.13+release.autotools/soundlib/modcommand.cpp 2018-10-02 21:06:06.000000000 +0200 @@ -91,7 +91,7 @@ case 0xB0: if(param & 0x0F) { command = CMD_VOLUMESLIDE; param |= 0xF0; } else command = CMD_NONE; break; case 0xC0: if(param == 0xC0) { command = CMD_NONE; note = NOTE_NOTECUT; } break; // this does different things in IT and ST3 case 0xD0: if(param == 0xD0) { command = CMD_NONE; } break; // ditto - // rest are the same + // rest are the same or handled elsewhere } } @@ -111,11 +111,12 @@ case 0x40: param = (param & 0x0F) | 0x70; break; case 0x50: command = CMD_XFINEPORTAUPDOWN; break; // map to unused X5x case 0x60: command = CMD_XFINEPORTAUPDOWN; break; // map to unused X6x + case 0x80: command = CMD_PANNING8; param = (param & 0x0F) * 0x11; break; // FT2 does actually not support E8x case 0x90: command = CMD_XFINEPORTAUPDOWN; break; // map to unused X9x case 0xA0: command = CMD_XFINEPORTAUPDOWN; break; // map to unused XAx case 0xB0: param = (param & 0x0F) | 0x60; break; case 0x70: command = CMD_NONE; break; // No NNA / envelope control in MOD/XM format - // rest are the same + // rest are the same or handled elsewhere } }
