diff --git a/.files b/.files index 61e68d7..9741d89 100644 Binary files a/.files and b/.files differ diff --git a/.rev b/.rev index 8363194..d82ded0 100644 --- a/.rev +++ b/.rev @@ -1851,4 +1851,12 @@ 1124035 + + ffa71b490a6dd49dc68ffc24c4e9574c + 1.2.11 + + anag+factory + + 1143687 + diff --git a/0001-control.h-Fix-ump-header-file-detection.patch b/0001-control.h-Fix-ump-header-file-detection.patch deleted file mode 100644 index b1e2250..0000000 --- a/0001-control.h-Fix-ump-header-file-detection.patch +++ /dev/null @@ -1,40 +0,0 @@ -From fcce13a6726c52882bd8b7131c61c4eba308792c Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Mon, 4 Sep 2023 09:38:26 +0200 -Subject: [PATCH] control.h: Fix ump header file detection -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Apparently, the control.h is used from apps separately (outside -asoundlib.h). Avoid errors like: - -/usr/include/alsa/control.h:417:47: error: ‘snd_ump_endpoint_info_t’ has not been declared - 417 | int snd_ctl_ump_endpoint_info(snd_ctl_t *ctl, snd_ump_endpoint_info_t *info); - | ^~~~~~~~~~~~~~~~~~~~~~~ -/usr/include/alsa/control.h:418:44: error: ‘snd_ump_block_info_t’ has not been declared - 418 | int snd_ctl_ump_block_info(snd_ctl_t *ctl, snd_ump_block_info_t *info); - | ^~~~~~~~~~~~~~~~~~~~ - -Fixes: https://github.com/alsa-project/alsa-lib/issues/348 -Signed-off-by: Jaroslav Kysela ---- - include/control.h | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/include/control.h b/include/control.h -index ab482ba448c0..e7541d56d636 100644 ---- a/include/control.h -+++ b/include/control.h -@@ -413,6 +413,8 @@ int snd_ctl_pcm_prefer_subdevice(snd_ctl_t *ctl, int subdev); - int snd_ctl_rawmidi_next_device(snd_ctl_t *ctl, int * device); - int snd_ctl_rawmidi_info(snd_ctl_t *ctl, snd_rawmidi_info_t * info); - int snd_ctl_rawmidi_prefer_subdevice(snd_ctl_t *ctl, int subdev); -+#endif -+#ifdef __ALSA_UMP_H - int snd_ctl_ump_next_device(snd_ctl_t *ctl, int *device); - int snd_ctl_ump_endpoint_info(snd_ctl_t *ctl, snd_ump_endpoint_info_t *info); - int snd_ctl_ump_block_info(snd_ctl_t *ctl, snd_ump_block_info_t *info); --- -2.35.3 - diff --git a/0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch b/0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch deleted file mode 100644 index 70352a4..0000000 --- a/0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 10bd599970acc71c92f85eb08943eb8d3d702a9c Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Wed, 6 Sep 2023 15:16:44 +0200 -Subject: [PATCH] global.h: move __STRING() macro outside !PIC ifdef block - -It solves the musl libc compilation issue. - -control.c: In function 'snd_ctl_open_conf': -../../include/global.h:98:36: warning: implicit declaration of function '__STRING' [-Wimplicit-function-declaratio] - 98 | #define SND_DLSYM_VERSION(version) __STRING(version) - | ^~~~~~~~ - -Fixes: https://github.com/alsa-project/alsa-lib/issues/350 -Signed-off-by: Jaroslav Kysela ---- - include/global.h | 10 +++++----- - 1 file changed, 5 insertions(+), 5 deletions(-) - -diff --git a/include/global.h b/include/global.h -index dfe9bc2b54bf..3ecaeee898c5 100644 ---- a/include/global.h -+++ b/include/global.h -@@ -51,6 +51,11 @@ const char *snd_asoundlib_version(void); - #define ATTRIBUTE_UNUSED __attribute__ ((__unused__)) - #endif - -+#ifndef __STRING -+/** \brief Return 'x' argument as string */ -+#define __STRING(x) #x -+#endif -+ - #ifdef PIC /* dynamic build */ - - /** \hideinitializer \brief Helper macro for #SND_DLSYM_BUILD_VERSION. */ -@@ -71,11 +76,6 @@ struct snd_dlsym_link { - - extern struct snd_dlsym_link *snd_dlsym_start; - --#ifndef __STRING --/** \brief Return 'x' argument as string */ --#define __STRING(x) #x --#endif -- - /** \hideinitializer \brief Helper macro for #SND_DLSYM_BUILD_VERSION. */ - #define __SND_DLSYM_VERSION(prefix, name, version) _ ## prefix ## name ## version - /** --- -2.35.3 - diff --git a/0003-pcm-Fix-segfault-with-32bit-libs.patch b/0003-pcm-Fix-segfault-with-32bit-libs.patch deleted file mode 100644 index 26cb61b..0000000 --- a/0003-pcm-Fix-segfault-with-32bit-libs.patch +++ /dev/null @@ -1,113 +0,0 @@ -From 0e3dfb9f705ca78be34cd70fd59d67c431e29cc7 Mon Sep 17 00:00:00 2001 -From: Takashi Iwai -Date: Sat, 9 Sep 2023 17:42:03 +0200 -Subject: [PATCH] pcm: Fix segfault with 32bit libs - -The recent rearrangement of header inclusion order caused a regression -showing segfaults on 32bit Arm. The primary reason is the -inconsistent compile condition depending on the inclusion of config.h; -while most of other code include pcm_local.h (that implicitly includes -config.h) at first, pcm_direct.c doesn't do it, hence the access with -direct plugins crashes. - -For fixing it, we need to include config.h at the beginning. But, -it's better to include pcm_local.h for all relevant code for -consistency. The patch does it, and also it adds the guard in -pcm_local.h for double inclusions. - -Fixes: ad3a8b8b314e ("reshuffle included files to include config.h as first") -Link: https://github.com/alsa-project/alsa-lib/issues/352 -Signed-off-by: Takashi Iwai ---- - src/pcm/pcm_direct.c | 1 + - src/pcm/pcm_dmix.c | 2 +- - src/pcm/pcm_dshare.c | 1 + - src/pcm/pcm_dsnoop.c | 1 + - src/pcm/pcm_local.h | 5 +++++ - src/pcm/pcm_shm.c | 1 + - 6 files changed, 10 insertions(+), 1 deletion(-) - -diff --git a/src/pcm/pcm_direct.c b/src/pcm/pcm_direct.c -index 040fc1605388..e53e59238119 100644 ---- a/src/pcm/pcm_direct.c -+++ b/src/pcm/pcm_direct.c -@@ -19,6 +19,7 @@ - * - */ - -+#include "pcm_local.h" - #include - #include - #include -diff --git a/src/pcm/pcm_dmix.c b/src/pcm/pcm_dmix.c -index 7cd3c50841ae..55cae3e79a06 100644 ---- a/src/pcm/pcm_dmix.c -+++ b/src/pcm/pcm_dmix.c -@@ -26,7 +26,7 @@ - * - */ - --#include "config.h" -+#include "pcm_local.h" - #include - #include - #include -diff --git a/src/pcm/pcm_dshare.c b/src/pcm/pcm_dshare.c -index 454b39a91429..c03290985457 100644 ---- a/src/pcm/pcm_dshare.c -+++ b/src/pcm/pcm_dshare.c -@@ -26,6 +26,7 @@ - * - */ - -+#include "pcm_local.h" - #include - #include - #include -diff --git a/src/pcm/pcm_dsnoop.c b/src/pcm/pcm_dsnoop.c -index d3ce300ce3b8..bf67c68a0dfa 100644 ---- a/src/pcm/pcm_dsnoop.c -+++ b/src/pcm/pcm_dsnoop.c -@@ -26,6 +26,7 @@ - * - */ - -+#include "pcm_local.h" - #include - #include - #include -diff --git a/src/pcm/pcm_local.h b/src/pcm/pcm_local.h -index 6a0e71e711ea..152c92c300e1 100644 ---- a/src/pcm/pcm_local.h -+++ b/src/pcm/pcm_local.h -@@ -20,6 +20,9 @@ - * - */ - -+#ifndef __PCM_LOCAL_H -+#define __PCM_LOCAL_H -+ - #include "config.h" - - #include -@@ -1223,3 +1226,5 @@ static inline void snd_pcm_unlock(snd_pcm_t *pcm) - #define snd_pcm_lock(pcm) do {} while (0) - #define snd_pcm_unlock(pcm) do {} while (0) - #endif /* THREAD_SAFE_API */ -+ -+#endif /* __PCM_LOCAL_H */ -diff --git a/src/pcm/pcm_shm.c b/src/pcm/pcm_shm.c -index f0bfd934d335..d9596547741c 100644 ---- a/src/pcm/pcm_shm.c -+++ b/src/pcm/pcm_shm.c -@@ -26,6 +26,7 @@ - * - */ - -+#include "pcm_local.h" - #include - #include - #include --- -2.35.3 - diff --git a/0004-reshuffle-included-files-to-include-config.h-as-firs.patch b/0004-reshuffle-included-files-to-include-config.h-as-firs.patch deleted file mode 100644 index 08d159f..0000000 --- a/0004-reshuffle-included-files-to-include-config.h-as-firs.patch +++ /dev/null @@ -1,210 +0,0 @@ -From 81a7a93636d9472fcb0c2ff32d9bfdf6ed10763d Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Wed, 13 Sep 2023 12:27:21 +0200 -Subject: [PATCH] reshuffle included files to include config.h as first - v2 - -config.h may contain defines like _FILE_OFFSET_BITS which influence -the system wide include files (off_t types, open -> open64 function -usage etc.). - -Fixes: ad3a8b8b ("reshuffle included files to include config.h as first") -Related: https://github.com/alsa-project/alsa-lib/pull/333 -Signed-off-by: Jaroslav Kysela ---- - src/control/setup.c | 2 +- - src/rawmidi/rawmidi.c | 2 +- - src/rawmidi/rawmidi_local.h | 2 +- - src/rawmidi/rawmidi_virt.c | 4 +--- - src/rawmidi/ump.c | 4 ---- - src/seq/seq.c | 2 +- - src/seq/seq_hw.c | 2 +- - src/seq/seq_local.h | 2 +- - src/seq/seq_midi_event.c | 2 +- - src/seq/seqmid.c | 4 +--- - src/userfile.c | 2 +- - 11 files changed, 10 insertions(+), 18 deletions(-) - -diff --git a/src/control/setup.c b/src/control/setup.c -index 88635e42e446..fb09611764cf 100644 ---- a/src/control/setup.c -+++ b/src/control/setup.c -@@ -29,13 +29,13 @@ - * - */ - -+#include "local.h" - #include - #include - #include - #include - #include - #include --#include "local.h" - - #ifndef DOC_HIDDEN - typedef struct { -diff --git a/src/rawmidi/rawmidi.c b/src/rawmidi/rawmidi.c -index 316f524b85ad..c4b45fa227f1 100644 ---- a/src/rawmidi/rawmidi.c -+++ b/src/rawmidi/rawmidi.c -@@ -144,12 +144,12 @@ This example shows open and read/write rawmidi operations. - * Shows open and read/write rawmidi operations. - */ - -+#include "rawmidi_local.h" - #include - #include - #include - #include - #include --#include "rawmidi_local.h" - - /** - * \brief setup the default parameters -diff --git a/src/rawmidi/rawmidi_local.h b/src/rawmidi/rawmidi_local.h -index 19dbf72584fa..f0bb06a7d824 100644 ---- a/src/rawmidi/rawmidi_local.h -+++ b/src/rawmidi/rawmidi_local.h -@@ -19,10 +19,10 @@ - * - */ - -+#include "local.h" - #include - #include - #include --#include "local.h" - - typedef struct { - int (*close)(snd_rawmidi_t *rawmidi); -diff --git a/src/rawmidi/rawmidi_virt.c b/src/rawmidi/rawmidi_virt.c -index 884b8ff8deee..04c485d3eabf 100644 ---- a/src/rawmidi/rawmidi_virt.c -+++ b/src/rawmidi/rawmidi_virt.c -@@ -19,13 +19,11 @@ - * - */ - --#include --#include -+#include "rawmidi_local.h" - #include - #include - #include - #include --#include "rawmidi_local.h" - #include "seq.h" - #include "seq_midi_event.h" - -diff --git a/src/rawmidi/ump.c b/src/rawmidi/ump.c -index 25fbaff23c9d..39c1c4a91928 100644 ---- a/src/rawmidi/ump.c -+++ b/src/rawmidi/ump.c -@@ -4,10 +4,6 @@ - * \brief Universal MIDI Protocol (UMP) Interface - */ - --#include --#include --#include --#include "local.h" - #include "rawmidi_local.h" - #include "ump_local.h" - -diff --git a/src/seq/seq.c b/src/seq/seq.c -index 899dfe9f96ba..fd8ca30e2472 100644 ---- a/src/seq/seq.c -+++ b/src/seq/seq.c -@@ -777,8 +777,8 @@ void event_filter(snd_seq_t *seq, snd_seq_event_t *ev) - - */ - --#include - #include "seq_local.h" -+#include - - /**************************************************************************** - * * -diff --git a/src/seq/seq_hw.c b/src/seq/seq_hw.c -index a51ebfb68ebd..b74948c81c9e 100644 ---- a/src/seq/seq_hw.c -+++ b/src/seq/seq_hw.c -@@ -20,9 +20,9 @@ - * - */ - -+#include "seq_local.h" - #include - #include --#include "seq_local.h" - - #ifndef PIC - /* entry for static linking */ -diff --git a/src/seq/seq_local.h b/src/seq/seq_local.h -index 9b4a65459d3d..468248062638 100644 ---- a/src/seq/seq_local.h -+++ b/src/seq/seq_local.h -@@ -23,10 +23,10 @@ - #ifndef __SEQ_LOCAL_H - #define __SEQ_LOCAL_H - -+#include "local.h" - #include - #include - #include --#include "local.h" - - #define SND_SEQ_OBUF_SIZE (16*1024) /* default size */ - #define SND_SEQ_IBUF_SIZE 500 /* in event_size aligned */ -diff --git a/src/seq/seq_midi_event.c b/src/seq/seq_midi_event.c -index df09bde30eea..95a44e9bc323 100644 ---- a/src/seq/seq_midi_event.c -+++ b/src/seq/seq_midi_event.c -@@ -28,10 +28,10 @@ - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -+#include "local.h" - #if HAVE_MALLOC_H - #include - #endif --#include "local.h" - - #ifndef DOC_HIDDEN - -diff --git a/src/seq/seqmid.c b/src/seq/seqmid.c -index 55651f3896f3..9ec93ee8ade1 100644 ---- a/src/seq/seqmid.c -+++ b/src/seq/seqmid.c -@@ -20,14 +20,12 @@ - * - */ - --#include --#include -+#include "seq_local.h" - #include - #include - #include - #include - #include --#include "seq_local.h" - - /** - * \brief queue controls - start/stop/continue -diff --git a/src/userfile.c b/src/userfile.c -index 4a740834313c..492ea9cbc238 100644 ---- a/src/userfile.c -+++ b/src/userfile.c -@@ -18,7 +18,7 @@ - * - */ - --#include -+#include "config.h" - #include - #include - #include --- -2.35.3 - diff --git a/0005-seq-Fix-typos-in-symbol-version-definitions.patch b/0005-seq-Fix-typos-in-symbol-version-definitions.patch deleted file mode 100644 index 634fdd6..0000000 --- a/0005-seq-Fix-typos-in-symbol-version-definitions.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 96f60d829f2c9dc9ad9eda46410adaa41b4b0da0 Mon Sep 17 00:00:00 2001 -From: Takashi Iwai -Date: Tue, 10 Oct 2023 08:20:15 +0200 -Subject: [PATCH] seq: Fix typos in symbol version definitions - -There were obvious typos in src/Versions.in that resulted in the -undefined symbols. Correct those entries. - -Fixes: 2aefb5c41cc0 ("seq: Add UMP support") -Closes: https://github.com/alsa-project/alsa-lib/issues/356 -Signed-off-by: Takashi Iwai ---- - src/Versions.in | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/src/Versions.in b/src/Versions.in -index c8ac1c8277a3..c53a99fa7ab0 100644 ---- a/src/Versions.in -+++ b/src/Versions.in -@@ -158,13 +158,13 @@ ALSA_1.2.10 { - @SYMBOL_PREFIX@snd_ctl_ump_block_info; - @SYMBOL_PREFIX@snd_seq_ump_*; - @SYMBOL_PREFIX@snd_seq_client_info_get_midi_version; -- @SYMBOL_PREFIX@snd_seq_seq_client_info_get_ump_group_enabled; -+ @SYMBOL_PREFIX@snd_seq_client_info_get_ump_group_enabled; - @SYMBOL_PREFIX@snd_seq_client_info_get_ump_groupless_enabled; -- @SYMBOL_PREFIX@snd_seq_seq_client_get_ump_conversion; -+ @SYMBOL_PREFIX@snd_seq_client_info_get_ump_conversion; - @SYMBOL_PREFIX@snd_seq_client_info_set_midi_version; -- @SYMBOL_PREFIX@snd_seq_seq_client_info_set_ump_group_enabled; -+ @SYMBOL_PREFIX@snd_seq_client_info_set_ump_group_enabled; - @SYMBOL_PREFIX@snd_seq_client_info_set_ump_groupless_enabled; -- @SYMBOL_PREFIX@snd_seq_seq_client_set_ump_conversion; -+ @SYMBOL_PREFIX@snd_seq_client_info_set_ump_conversion; - @SYMBOL_PREFIX@snd_seq_get_ump_endpoint_info; - @SYMBOL_PREFIX@snd_seq_get_ump_block_info; - @SYMBOL_PREFIX@snd_seq_set_ump_endpoint_info; --- -2.35.3 - diff --git a/0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch b/0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch deleted file mode 100644 index fba3ec6..0000000 --- a/0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 915a71a2cdf6361f0fc77fa367a67910dc0288db Mon Sep 17 00:00:00 2001 -From: Takashi Iwai -Date: Sat, 4 Nov 2023 10:05:39 +0100 -Subject: [PATCH] seq: Fix invalid sanity-check in - snd_seq_set_input_buffer_size() - -snd_seq_set_input_buffer_size() has an assert() call with packet_size, -but it's still uninitialized at that point. Fix it with the real -packet size. - -Fixes: 2aefb5c41cc0 ("seq: Add UMP support") -Signed-off-by: Takashi Iwai ---- - src/seq/seq.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/seq/seq.c b/src/seq/seq.c -index fd8ca30e2472..5ec737a7004f 100644 ---- a/src/seq/seq.c -+++ b/src/seq/seq.c -@@ -1269,9 +1269,9 @@ int snd_seq_set_input_buffer_size(snd_seq_t *seq, size_t size) - size_t packet_size; - - assert(seq && seq->ibuf); -+ packet_size = get_packet_size(seq); - assert(size >= packet_size); - snd_seq_drop_input(seq); -- packet_size = get_packet_size(seq); - size = (size + packet_size - 1) / packet_size; - if (size != seq->ibufsize) { - char *newbuf; --- -2.35.3 - diff --git a/0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch b/0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch deleted file mode 100644 index cf38bb2..0000000 --- a/0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch +++ /dev/null @@ -1,42 +0,0 @@ -From f202ec3c23abf16a2382acc0de35900173e32160 Mon Sep 17 00:00:00 2001 -From: Hector Martin -Date: Sat, 28 Oct 2023 21:33:29 +0900 -Subject: [PATCH] mixer: simple: Support dB TLVs for CTL_SINGLE controls - -dB mappings do not work for controls not named "* Volume", since we do not -fall back to CTL_SINGLE in get_selem_ctl. Add that branch to make it -work. - -Fixes dB ranges for e.g. controls named "* Gain". - -Closes: https://github.com/alsa-project/alsa-lib/pull/358 -Signed-off-by: Hector Martin -Signed-off-by: Jaroslav Kysela ---- - src/mixer/simple_none.c | 9 +++++---- - 1 file changed, 5 insertions(+), 4 deletions(-) - -diff --git a/src/mixer/simple_none.c b/src/mixer/simple_none.c -index 846b0ca92467..dd03fcf13d01 100644 ---- a/src/mixer/simple_none.c -+++ b/src/mixer/simple_none.c -@@ -1155,11 +1155,12 @@ static selem_ctl_t *get_selem_ctl(selem_none_t *s, int dir) - c = &s->ctls[CTL_CAPTURE_VOLUME]; - else - return NULL; -- if (! c->elem) { -+ if (! c->elem) - c = &s->ctls[CTL_GLOBAL_VOLUME]; -- if (! c->elem) -- return NULL; -- } -+ if (! c->elem) -+ c = &s->ctls[CTL_SINGLE]; -+ if (! c->elem) -+ return NULL; - if (c->type != SND_CTL_ELEM_TYPE_INTEGER) - return NULL; - return c; --- -2.35.3 - diff --git a/0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch b/0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch deleted file mode 100644 index 9290a5c..0000000 --- a/0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch +++ /dev/null @@ -1,66 +0,0 @@ -From 2fca03e792ef1b740e8a7370fdd360d0b627c84c Mon Sep 17 00:00:00 2001 -From: Takashi Iwai -Date: Mon, 6 Nov 2023 16:27:11 +0100 -Subject: [PATCH] seq: Clear UMP event flag for legacy apps - -It seems that some applications (at least Chrome WebMIDI) set random -bits to the flags of event packet, and this confuses as if they were -UMP-events, which are eventually filtered out. - -Although it's a bug of applications, it's better to avoid the -regressions. So this patch forcibly clears the UMP flag of the -incoming and outgoing events when the application is running in the -legacy mode (i.e. midi_version = 0). - -Fixes: 2aefb5c41cc0 ("seq: Add UMP support") -Closes: https://github.com/alsa-project/alsa-lib/issues/360 -Signed-off-by: Takashi Iwai ---- - src/seq/seq.c | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/src/seq/seq.c b/src/seq/seq.c -index 5ec737a7004f..643cf159f3ef 100644 ---- a/src/seq/seq.c -+++ b/src/seq/seq.c -@@ -4161,6 +4161,13 @@ int snd_seq_event_output(snd_seq_t *seq, snd_seq_event_t *ev) - return result; - } - -+/* workaround for broken legacy apps that set UMP event bit unexpectedly */ -+static void clear_ump_for_legacy_apps(snd_seq_t *seq, snd_seq_event_t *ev) -+{ -+ if (!seq->midi_version && snd_seq_ev_is_ump(ev)) -+ ev->flags &= ~SNDRV_SEQ_EVENT_UMP; -+} -+ - /** - * \brief output an event onto the lib buffer without draining buffer - * \param seq sequencer handle -@@ -4178,6 +4185,7 @@ int snd_seq_event_output_buffer(snd_seq_t *seq, snd_seq_event_t *ev) - { - int len; - assert(seq && ev); -+ clear_ump_for_legacy_apps(seq, ev); - len = snd_seq_event_length(ev); - if (len < 0) - return -EINVAL; -@@ -4238,6 +4246,7 @@ int snd_seq_event_output_direct(snd_seq_t *seq, snd_seq_event_t *ev) - ssize_t len; - void *buf; - -+ clear_ump_for_legacy_apps(seq, ev); - len = snd_seq_event_length(ev); - if (len < 0) - return len; -@@ -4374,6 +4383,7 @@ static int snd_seq_event_retrieve_buffer(snd_seq_t *seq, snd_seq_event_t **retp) - snd_seq_event_t *ev; - - *retp = ev = (snd_seq_event_t *)(seq->ibuf + seq->ibufptr * packet_size); -+ clear_ump_for_legacy_apps(seq, ev); - seq->ibufptr++; - seq->ibuflen--; - if (! snd_seq_ev_is_variable(ev)) --- -2.35.3 - diff --git a/0009-seq-Simplify-snd_seq_extract_output.patch b/0009-seq-Simplify-snd_seq_extract_output.patch deleted file mode 100644 index f637d52..0000000 --- a/0009-seq-Simplify-snd_seq_extract_output.patch +++ /dev/null @@ -1,99 +0,0 @@ -From 94a5ddff9d5d85104755ee17b301c289a060cebf Mon Sep 17 00:00:00 2001 -From: Takashi Iwai -Date: Mon, 6 Nov 2023 16:33:59 +0100 -Subject: [PATCH] seq: Simplify snd_seq_extract_output() - -Now that we never put UMP events on the output buffer in the legacy -mode, the check and skip of UMP events are no longer necessary. -It means that ump_allowed argument is meaningless in extract_output(), -too. - -Let's drop the unnecessary check and move the code extract_output() -into snd_seq_extract_output() again, and call this directly from -snd_seq_ump_extract_output() for simplification. - -Signed-off-by: Takashi Iwai ---- - src/seq/seq.c | 52 ++++++++++++++++++++------------------------------- - 1 file changed, 20 insertions(+), 32 deletions(-) - -diff --git a/src/seq/seq.c b/src/seq/seq.c -index 643cf159f3ef..5eac4848b9c7 100644 ---- a/src/seq/seq.c -+++ b/src/seq/seq.c -@@ -4308,36 +4308,6 @@ int snd_seq_drain_output(snd_seq_t *seq) - return 0; - } - --static int extract_output(snd_seq_t *seq, snd_seq_event_t **ev_res, int ump_allowed) --{ -- size_t len, olen; -- assert(seq); -- if (ev_res) -- *ev_res = NULL; -- repeat: -- if ((olen = seq->obufused) < sizeof(snd_seq_event_t)) -- return -ENOENT; -- len = snd_seq_event_length((snd_seq_event_t *)seq->obuf); -- if (olen < len) -- return -ENOENT; -- /* skip invalid UMP events */ -- if (snd_seq_ev_is_ump((snd_seq_event_t *)seq->obuf) && !ump_allowed) { -- seq->obufused -= len; -- memmove(seq->obuf, seq->obuf + len, seq->obufused); -- goto repeat; -- } -- if (ev_res) { -- /* extract the event */ -- if (alloc_tmpbuf(seq, len) < 0) -- return -ENOMEM; -- memcpy(seq->tmpbuf, seq->obuf, len); -- *ev_res = (snd_seq_event_t *)seq->tmpbuf; -- } -- seq->obufused = olen - len; -- memmove(seq->obuf, seq->obuf + len, seq->obufused); -- return 0; --} -- - /** - * \brief extract the first event in output buffer - * \param seq sequencer handle -@@ -4351,7 +4321,25 @@ static int extract_output(snd_seq_t *seq, snd_seq_event_t **ev_res, int ump_allo - */ - int snd_seq_extract_output(snd_seq_t *seq, snd_seq_event_t **ev_res) - { -- return extract_output(seq, ev_res, 0); -+ size_t len, olen; -+ assert(seq); -+ if (ev_res) -+ *ev_res = NULL; -+ if ((olen = seq->obufused) < sizeof(snd_seq_event_t)) -+ return -ENOENT; -+ len = snd_seq_event_length((snd_seq_event_t *)seq->obuf); -+ if (olen < len) -+ return -ENOENT; -+ if (ev_res) { -+ /* extract the event */ -+ if (alloc_tmpbuf(seq, len) < 0) -+ return -ENOMEM; -+ memcpy(seq->tmpbuf, seq->obuf, len); -+ *ev_res = (snd_seq_event_t *)seq->tmpbuf; -+ } -+ seq->obufused = olen - len; -+ memmove(seq->obuf, seq->obuf + len, seq->obufused); -+ return 0; - } - - /*----------------------------------------------------------------*/ -@@ -4547,7 +4535,7 @@ int snd_seq_ump_extract_output(snd_seq_t *seq, snd_seq_ump_event_t **ev_res) - { - if (!seq->midi_version) - return -EBADFD; -- return extract_output(seq, (snd_seq_event_t **)ev_res, 1); -+ return snd_seq_extract_output(seq, (snd_seq_event_t **)ev_res); - } - - /** --- -2.35.3 - diff --git a/0010-seq-Check-protocol-compatibility-with-the-current-ve.patch b/0010-seq-Check-protocol-compatibility-with-the-current-ve.patch deleted file mode 100644 index 32a9a02..0000000 --- a/0010-seq-Check-protocol-compatibility-with-the-current-ve.patch +++ /dev/null @@ -1,37 +0,0 @@ -From ed6b07084bfea4155bbc98bcf38508ab81bdd008 Mon Sep 17 00:00:00 2001 -From: Takashi Iwai -Date: Mon, 6 Nov 2023 16:36:55 +0100 -Subject: [PATCH] seq: Check protocol compatibility with the current version - -There is no need for checking the protocol compatibility with another -version, but we just need to check for the current version. - -Signed-off-by: Takashi Iwai ---- - src/seq/seq_hw.c | 3 +-- - 1 file changed, 1 insertion(+), 2 deletions(-) - -diff --git a/src/seq/seq_hw.c b/src/seq/seq_hw.c -index b74948c81c9e..eeaf26e16d1c 100644 ---- a/src/seq/seq_hw.c -+++ b/src/seq/seq_hw.c -@@ -32,7 +32,6 @@ const char *_snd_module_seq_hw = ""; - #ifndef DOC_HIDDEN - #define SNDRV_FILE_SEQ ALSA_DEVICE_DIRECTORY "seq" - #define SNDRV_FILE_ALOADSEQ ALOAD_DEVICE_DIRECTORY "aloadSEQ" --#define SNDRV_SEQ_VERSION_MAX SNDRV_PROTOCOL_VERSION(1, 0, 2) - - typedef struct { - int fd; -@@ -535,7 +534,7 @@ int snd_seq_hw_open(snd_seq_t **handle, const char *name, int streams, int mode) - close(fd); - return ret; - } -- if (SNDRV_PROTOCOL_INCOMPATIBLE(ver, SNDRV_SEQ_VERSION_MAX)) { -+ if (SNDRV_PROTOCOL_INCOMPATIBLE(ver, SNDRV_SEQ_VERSION)) { - close(fd); - return -SND_ERROR_INCOMPATIBLE_VERSION; - } --- -2.35.3 - diff --git a/alsa-lib-1.2.10.tar.bz2 b/alsa-lib-1.2.10.tar.bz2 deleted file mode 120000 index f8136c5..0000000 --- a/alsa-lib-1.2.10.tar.bz2 +++ /dev/null @@ -1 +0,0 @@ -/ipfs/bafybeihgnbqesmnhd3g5sjjy6vujabl4camldmycy7nmlh25v4lazkwo4q \ No newline at end of file diff --git a/alsa-lib-1.2.10.tar.bz2.sig b/alsa-lib-1.2.10.tar.bz2.sig deleted file mode 100644 index 827e36e..0000000 --- a/alsa-lib-1.2.10.tar.bz2.sig +++ /dev/null @@ -1,16 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQIzBAABCAAdFiEE8E31BzesGohMSz1xg4BZbablnJEFAmTyDKoACgkQg4BZbabl -nJHkUQ/9FBYbT0I6HvjfJmkYBfpRDRbSxPimqho6CYdHPS4gEBksGha1obBoFEnn -HAmv8pFWn4tYOPGJ6RD+mGHBntc9W7Mzg6J7NTcoaGK3u4szPwZ4iPhn5QSMOGzH -wRFJFb1jt1Ryj8eKJQSELsy2VMJzSj3cObu8nILJlKAeV9AJfAFyXRQPUjJZOkDr -27oItHV2vtEaIndHTNHYOnkDrPPp0DplM+gfUhLP0ghu0hknQI7PuOJzN9AWqkVD -UiMsVGdXvPTmJd0+nzzUSY5lmStWcp7kujH5er/0YpB1/SWS9GgN4YN5q5nUFgVA -b5xBb3/8xW0EZ9j53X+PgCE57iMe5/5UCto70ITO4o44k0rev/9ixdzBc5J5dyls -cRLtXJwnxNS82pG429uOkEBAe309JCMKpDlOksKbPpqbtvcRN3yXlE92GEuUIrHT -VCPzNQd5XXYXX4E06/ScbpYvFqEyoT+Ph6cyunwoL9ocioj+tsB4fHi1exbwoy6+ -/rx/70NjtFEVCdRpuflNmQZGyTtDd+sfaxsanH8MK7jdZCIXHyLBKqSRIrSoc8v/ -sU7fzSPQ2zh1dnmjzm69l1z/YmPHf+gbGwC4Tb6Wq37o49APQYh2csz6z4E0pMP3 -WgSPuWyXfgsQg9vu1/D+DnQAQFHFK8q2JKmpf7QoXpFGMN3G2nI= -=qe38 ------END PGP SIGNATURE----- diff --git a/alsa-lib-1.2.11.tar.bz2 b/alsa-lib-1.2.11.tar.bz2 new file mode 120000 index 0000000..536b655 --- /dev/null +++ b/alsa-lib-1.2.11.tar.bz2 @@ -0,0 +1 @@ +/ipfs/bafybeidcjlpvcmu6zvhybcsitnyzdafllo46xwyl2oei2d7q4q2uzjmmai \ No newline at end of file diff --git a/alsa-lib-1.2.11.tar.bz2.sig b/alsa-lib-1.2.11.tar.bz2.sig new file mode 100644 index 0000000..d18e4f0 --- /dev/null +++ b/alsa-lib-1.2.11.tar.bz2.sig @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCAAdFiEE8E31BzesGohMSz1xg4BZbablnJEFAmW30XoACgkQg4BZbabl +nJGspg//e2GZwtqdYFPlHPRENVRUH6koiyzptLEiNUwfj3KduL7H2gpaK95Az+yE +zhpUjBK6mycxccE2JRyA7yCeTQFKp8LAXpHHH6gErLvAMCb+8g+bTgJDkCovI5El +Up3tzlygrfJBBPXiFrNRMX1S0OQskgUlXC5Ki8+Y31JZvW6rp4DgqN7iAFl19Lcy +BiDiguDCah3Nws8x1tRxAnOA5Qrjg/dZ0fPU1jRINk+FSUM129TPLWAC5QV/3IGL +qhZRJ0VTqSRE+bippVtc0trzrOQQ9gQkPYyI/SW5S3+O9qAQBMYBaupUVy6bOvxj +ySj3iyz/G7JvDUtDZL23z9bQ7ubHvTiy4WqHGX8OTDXzczw5upOdQi8zTNKeE18+ +m1Uj+FmXeBRgkDc3G99F9hgFcja1BdrisJhX+OarN9OPD7m8fZSZfH8y2IV2YRuz +OXcIp5B5A7JUrmQiLgBhiGrZdN9bKRee+O5o1LBttsZcg/JBSZiC2NAlV2jQ2Xze +ITvjz5uma+ROxIWKQTopByl/fXYf4xDk7pATS7uvLzY0tuOI+Gkgt3+hFOs5MMDK +TXIC41ZnSaIRQdjs8FhTzNSViLHrCUOmP3GORpnE2oCR2PfUen9YJ+RcoU5ezRm0 +Wh1ZLNd+//bqCssVDswA9jU2vbJ9zsJPqeIuYOSdF/PKRw5CRqY= +=3Cxi +-----END PGP SIGNATURE----- diff --git a/alsa.changes b/alsa.changes index 099dc58..76d0d2a 100644 --- a/alsa.changes +++ b/alsa.changes @@ -1,4 +1,26 @@ ------------------------------------------------------------------- +Fri Feb 2 14:49:30 UTC 2024 - Takashi Iwai + +- Updated to alsa-lib 1.2.11: + * auto-tools fixes, versioned symbol fixes + * support dB TLVs for single controls + * various PCM updates, including subformat extensions + * UMP and sequencer API fixes + For details, see: + https://www.alsa-project.org/wiki/Changes_v1.2.10_v1.2.11#alsa-lib +- Dropped obsoleted patches: + 0001-control.h-Fix-ump-header-file-detection.patch + 0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch + 0003-pcm-Fix-segfault-with-32bit-libs.patch + 0004-reshuffle-included-files-to-include-config.h-as-firs.patch + 0005-seq-Fix-typos-in-symbol-version-definitions.patch + 0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch + 0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch + 0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch + 0009-seq-Simplify-snd_seq_extract_output.patch + 0010-seq-Check-protocol-compatibility-with-the-current-ve.patch + +------------------------------------------------------------------- Tue Nov 7 14:51:05 UTC 2023 - Takashi Iwai - Backport upstream fixes for sequencer and mixer: diff --git a/alsa.spec b/alsa.spec index b487d04..da74786 100644 --- a/alsa.spec +++ b/alsa.spec @@ -1,7 +1,7 @@ # # spec file for package alsa # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -32,7 +32,7 @@ %endif Name: alsa -Version: 1.2.10 +Version: 1.2.11 Release: 0 Summary: Advanced Linux Sound Architecture License: LGPL-2.1-or-later @@ -56,16 +56,6 @@ Source34: alsa-init.sh # from https://www.alsa-project.org/files/pub/gpg-release-key-v1.txt Source35: alsa.keyring # upstream fixes -Patch1: 0001-control.h-Fix-ump-header-file-detection.patch -Patch2: 0002-global.h-move-__STRING-macro-outside-PIC-ifdef-block.patch -Patch3: 0003-pcm-Fix-segfault-with-32bit-libs.patch -Patch4: 0004-reshuffle-included-files-to-include-config.h-as-firs.patch -Patch5: 0005-seq-Fix-typos-in-symbol-version-definitions.patch -Patch6: 0006-seq-Fix-invalid-sanity-check-in-snd_seq_set_input_bu.patch -Patch7: 0007-mixer-simple-Support-dB-TLVs-for-CTL_SINGLE-controls.patch -Patch8: 0008-seq-Clear-UMP-event-flag-for-legacy-apps.patch -Patch9: 0009-seq-Simplify-snd_seq_extract_output.patch -Patch10: 0010-seq-Check-protocol-compatibility-with-the-current-ve.patch # rest suse fixes Patch101: alsa-lib-ignore-non-accessible-ALSA_CONFIG_PATH.patch BuildRequires: doxygen