diff --git a/90-alsa-tools-firmware.rules b/90-alsa-tools-firmware.rules index d19bcba..790cddf 100644 --- a/90-alsa-tools-firmware.rules +++ b/90-alsa-tools-firmware.rules @@ -1,11 +1,12 @@ # TASCAM US-428 usb sound card. -SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="1604", ATTRS{idProduct}=="8000", RUN+="/usr/lib/udev/tascam_fw" -SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="1604", ATTRS{idProduct}=="8001", RUN+="/usr/lib/udev/tascam_fpga" +SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="1604", ATTRS{idProduct}=="8000", RUN+="/lib/udev/tascam_fw" +SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="1604", ATTRS{idProduct}=="8001", RUN+="/lib/udev/tascam_fpga" # TASCAM US-224 usb sound card. -SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="1604", ATTRS{idProduct}=="8004", RUN+="/usr/lib/udev/tascam_fw" -SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="1604", ATTRS{idProduct}=="8005", RUN+="/usr/lib/udev/tascam_fpga" +SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="1604", ATTRS{idProduct}=="8004", RUN+="/lib/udev/tascam_fw" +SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="1604", ATTRS{idProduct}=="8005", RUN+="/lib/udev/tascam_fpga" # TASCAM US-122 usb sound card. -SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="1604", ATTRS{idProduct}=="8006", RUN+="/usr/lib/udev/tascam_fw" -SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="1604", ATTRS{idProduct}=="8007", RUN+="/usr/lib/udev/tascam_fpga" +SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="1604", ATTRS{idProduct}=="8006", RUN+="/lib/udev/tascam_fw" +SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="1604", ATTRS{idProduct}=="8007", RUN+="/lib/udev/tascam_fpga" + diff --git a/alsa-tools-c99.patch b/alsa-tools-c99.patch deleted file mode 100644 index ef07ed0..0000000 --- a/alsa-tools-c99.patch +++ /dev/null @@ -1,132 +0,0 @@ -Submitted upstream: - -diff --git a/echomixer/echomixer.c b/echomixer/echomixer.c -index 4946a5ddd5de6790..80124baefa6608f3 100644 ---- a/echomixer/echomixer.c -+++ b/echomixer/echomixer.c -@@ -2105,7 +2105,7 @@ printf("components = %s\n", snd_ctl_card_info_get_components(hw_info));*/ - for (i=0; i= %{version} %if 0%{!?_without_tools:1} +BuildRequires: gtk+-devel BuildRequires: gtk2-devel BuildRequires: gtk3-devel -BuildRequires: gtk4-devel BuildRequires: fltk-devel -BuildRequires: make Buildrequires: desktop-file-utils Requires: xorg-x11-fonts-misc # Needed for hwmixvolume -Requires: python3-alsa +Requires: python-alsa %endif %description @@ -76,6 +84,7 @@ certain sound cards. %package firmware Summary: ALSA tools for uploading firmware to some soundcards +Group: Applications/System Requires: udev Requires: alsa-firmware Requires: fxload @@ -93,7 +102,6 @@ The following tools are available: %prep %setup -q -n %{name}-%{version} -%patch -P 1 -p1 -b .hwmixvolume-python %build mv seq/sbiload . ; rm -rf seq @@ -104,18 +112,35 @@ do cd .. done + %install mkdir -p %{buildroot}%{_datadir}/{pixmaps,applications} for i in %{?builddirstools:%builddirstools} %{?builddirsfirmw:%builddirsfirmw} do case $i in + echomixer) + (cd $i ; %make_install ; install -m 644 %{SOURCE4} %{buildroot}%{_datadir}/pixmaps/ ; install -m 644 %{SOURCE3} %{buildroot}%{_datadir}/applications/ ) || exit 1 + ;; + envy24control) + (cd $i ; %make_install ; install -m 644 %{SOURCE2} %{buildroot}%{_datadir}/pixmaps/ ; install -m 644 %{SOURCE1} %{buildroot}%{_datadir}/applications/ ) || exit 1 + ;; + hdspconf) + (cd $i ; %make_install ) || exit 1 + ;; + hdspmixer) + (cd $i ; %make_install ) || exit 1 + ;; + hwmixvolume) + (cd $i ; %make_install ; install -m 644 %{SOURCE6} %{buildroot}%{_datadir}/pixmaps/ ; install -m 644 %{SOURCE7} %{buildroot}%{_datadir}/applications/ ) || exit 1 + ;; usx2yloader) - (cd $i ; %make_install hotplugdir=/usr/lib/udev) || exit 1 + (cd $i ; %make_install hotplugdir=/lib/udev) || exit 1 ;; - *) - (cd $i ; %make_install) || exit 1 + hdajackretask) + (cd $i ; %make_install ; install -m 644 %{SOURCE9} %{buildroot}%{_datadir}/applications/ ) || exit 1 ;; + *) (cd $i ; %make_install) || exit 1 esac if [[ -s "${i}"/README ]] then @@ -134,16 +159,15 @@ do cp "${i}"/COPYING "%{buildroot}%{_pkgdocdir}/${i}" fi if [[ -s %{buildroot}%{_datadir}/applications/${i}.desktop ]] ; then - desktop-file-validate %{buildroot}%{_datadir}/applications/${i}.desktop desktop-file-install --dir %{buildroot}%{_datadir}/applications \ %{buildroot}%{_datadir}/applications/${i}.desktop fi done # convert hotplug stuff to udev -rm -f %{buildroot}/usr/lib/udev/tascam_fw.usermap -mkdir -p %{buildroot}/usr/lib/udev/rules.d -install -m 644 %{SOURCE1} %{buildroot}/usr/lib/udev/rules.d +rm -f %{buildroot}/lib/udev/tascam_fw.usermap +mkdir -p %{buildroot}/lib/udev/rules.d +install -m 644 %{SOURCE5} %{buildroot}/lib/udev/rules.d %if 0%{!?_without_tools:1} %files @@ -171,10 +195,19 @@ install -m 644 %{SOURCE1} %{buildroot}/usr/lib/udev/rules.d %{_bindir}/hda-verb %{_bindir}/hdajackretask %{_bindir}/hdajacksensetest -%{_datadir}/sounds/* +%{_datadir}/applications/echomixer.desktop +%{_datadir}/applications/envy24control.desktop +%{_datadir}/applications/hdspconf.desktop +%{_datadir}/applications/hdspmixer.desktop +%{_datadir}/applications/hwmixvolume.desktop +%{_datadir}/applications/hdajackretask.desktop %{_datadir}/man/man1/envy24control.1.gz -%{_datadir}/applications/*.desktop -%{_datadir}/icons/hicolor/*/apps* +%{_datadir}/pixmaps/echomixer.png +%{_datadir}/pixmaps/envy24control.png +%{_datadir}/pixmaps/hdspconf.png +%{_datadir}/pixmaps/hdspmixer.png +%{_datadir}/pixmaps/hwmixvolume.png +%{_datadir}/sounds/* # sb16_csp stuff which is excluded for PPCx %ifnarch ppc ppc64 @@ -192,9 +225,9 @@ install -m 644 %{SOURCE1} %{buildroot}/usr/lib/udev/rules.d %doc %{_pkgdocdir}/mixartloader %doc %{_pkgdocdir}/usx2yloader %doc %{_pkgdocdir}/vxloader -/usr/lib/udev/rules.d/*.rules -/usr/lib/udev/tascam_fpga -/usr/lib/udev/tascam_fw +/lib/udev/rules.d/*.rules +/lib/udev/tascam_fpga +/lib/udev/tascam_fw %{_bindir}/hdsploader %{_bindir}/mixartloader %{_bindir}/usx2yloader @@ -202,132 +235,7 @@ install -m 644 %{SOURCE1} %{buildroot}/usr/lib/udev/rules.d %endif %changelog -* Fri Jan 16 2026 Fedora Release Engineering - 1.2.15-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild - -* Mon Dec 8 2025 Jaroslav Kysela - 1.2.15-1 -- Updated to 1.2.15 - -* Wed Jul 23 2025 Fedora Release Engineering - 1.2.14-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Mon Apr 14 2025 Jaroslav Kysela - 1.2.14-1 -- Updated to 1.2.14 - -* Mon Jan 27 2025 Jaroslav Kysela - 1.2.11-6 -- GCC warning fixes - -* Thu Jan 16 2025 Fedora Release Engineering - 1.2.11-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Wed Dec 18 2024 Jaroslav Kysela - 1.2.11-4 -- Move remaining files to /usr tree - -* Wed Jul 17 2024 Fedora Release Engineering - 1.2.11-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Mon Jan 29 2024 Jaroslav Kysela - 1.2.11-2 -- Updated to 1.2.11 - -* Mon Jan 22 2024 Fedora Release Engineering - 1.2.5-12 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Jan 19 2024 Fedora Release Engineering - 1.2.5-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Tue Jan 09 2024 Florian Weimer - 1.2.5-10 -- Fix C type errors using G_CALLBACK - -* Wed Jul 19 2023 Fedora Release Engineering - 1.2.5-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Tue Jun 6 2023 Jaroslav Kysela - 1.2.5-8 -- SPDX license - -* Wed Jan 18 2023 Fedora Release Engineering - 1.2.5-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Wed Jul 20 2022 Fedora Release Engineering - 1.2.5-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Tue Mar 08 2022 Leigh Scott - 1.2.5-4 -- Remove unused gtk+-devel - -* Wed Jan 19 2022 Fedora Release Engineering - 1.2.5-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Wed Jul 21 2021 Fedora Release Engineering - 1.2.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Sun May 30 2021 Jaroslav Kysela - 1.2.5-1 -- Updated to 1.2.5 - -* Tue Jan 26 2021 Fedora Release Engineering - 1.2.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Fri Jul 31 2020 Fedora Release Engineering - 1.2.2-3 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Mon Jul 27 2020 Fedora Release Engineering - 1.2.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Feb 19 2020 Jaroslav Kysela - 1.2.2-1 -- Updated to 1.2.2 - -* Tue Jan 28 2020 Fedora Release Engineering - 1.1.7-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Wed Jul 24 2019 Fedora Release Engineering - 1.1.7-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu Jan 31 2019 Fedora Release Engineering - 1.1.7-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Sun Dec 09 2018 Miro HronĨok - 1.1.7-2 -- Switch python2-alsa dependency to python3-alsa as hwmixvolume runs on Python 3 - -* Tue Oct 16 2018 Jaroslav Kysela - 1.1.7-1 -- Updated to 1.1.7 - -* Thu Jul 12 2018 Fedora Release Engineering - 1.1.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Tue Apr 03 2018 Jaroslav Kysela - 1.1.6-1 -- Updated to 1.1.6 - -* Wed Feb 28 2018 Iryna Shcherbina - 1.1.5-4 -- Update Python 2 dependency declarations to new packaging standards - (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3) - -* Thu Feb 22 2018 Tim Jackson - 1.1.5-3 -- Add missing BuildRequire on gcc - -* Wed Feb 07 2018 Fedora Release Engineering - 1.1.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Tue Nov 14 2017 Jaroslav Kysela - 1.1.5-1 -- Updated to 1.1.5 - -* Wed Aug 02 2017 Fedora Release Engineering - 1.1.3-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 1.1.3-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Fri Feb 10 2017 Fedora Release Engineering - 1.1.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Wed Sep 21 2016 Jaroslav Kysela - 1.1.3-1 -- Updated to 1.1.3 - -* Wed Mar 16 2016 Yaakov Selkowitz - 1.1.0-3 -- Fix FTBFS with GCC 6 (#1307312) - -* Wed Feb 03 2016 Fedora Release Engineering - 1.1.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Tue Oct 27 2015 Jaroslav Kysela - 1.1.0-1 +* Thu Mar 31 2016 Jaroslav Kysela - 1.1.0-1 - Updated to 1.1.0 * Fri Sep 18 2015 Richard Hughes - 1.0.29-5 diff --git a/echomixer.desktop b/echomixer.desktop new file mode 100644 index 0000000..ee77e00 --- /dev/null +++ b/echomixer.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=Echomixer +GenericName=Control Echo Digital Audio sound cards +Comment=Mixer and GUI control utility for Echo Digital Audio sound cards +Exec=echomixer +Icon=echomixer +Terminal=false +Type=Application +Categories=Application;AudioVideo; +Version=0.9.4 diff --git a/echomixer.png b/echomixer.png new file mode 100644 index 0000000..48c4b92 Binary files /dev/null and b/echomixer.png differ diff --git a/envy24control.desktop b/envy24control.desktop new file mode 100644 index 0000000..ef814c0 --- /dev/null +++ b/envy24control.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=Envy24 Control +GenericName=Envy24 Control Utility +Comment=Mixer and GUI control utility for Envy24-based sound cards +Exec=envy24control +Icon=envy24control +Terminal=false +Type=Application +Categories=Application;AudioVideo; +Version=0.9.4 diff --git a/envy24control.png b/envy24control.png new file mode 100644 index 0000000..73c47d6 Binary files /dev/null and b/envy24control.png differ diff --git a/gcc-fixes.patch b/gcc-fixes.patch deleted file mode 100644 index d136ba0..0000000 --- a/gcc-fixes.patch +++ /dev/null @@ -1,827 +0,0 @@ -From 97092591e03fa01a7b3b38ecf120fc28f437b9ca Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Sun, 26 Jan 2025 12:40:23 +0100 -Subject: [PATCH 01/11] envy24control: fix cast warnings and string array - overflows - -Signed-off-by: Jaroslav Kysela ---- - envy24control/config.c | 2 +- - envy24control/envy24control.c | 4 ++-- - envy24control/levelmeters.c | 2 +- - envy24control/new_process.c | 6 +++--- - envy24control/profiles.c | 13 ++++++------- - envy24control/profiles.h | 2 +- - envy24control/strstr_icase_blank.c | 7 ++++++- - 7 files changed, 20 insertions(+), 16 deletions(-) - -diff --git a/envy24control/config.c b/envy24control/config.c -index 6933eef..c27cf27 100644 ---- a/envy24control/config.c -+++ b/envy24control/config.c -@@ -46,7 +46,7 @@ void config_close() - - void config_set_stereo(GtkWidget *but, gpointer data) - { -- gint i=(gint)data; -+ gint i=GPOINTER_TO_INT(data); - config_stereo[i]=GTK_TOGGLE_BUTTON(but)->active; - } - -diff --git a/envy24control/envy24control.c b/envy24control/envy24control.c -index 107a843..bce41eb 100644 ---- a/envy24control/envy24control.c -+++ b/envy24control/envy24control.c -@@ -249,7 +249,7 @@ static void create_mixer_frame(GtkWidget *box, int stream) - gtk_box_pack_end(GTK_BOX(vbox), toggle, FALSE, FALSE, 0); - /* gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), TRUE); */ - gtk_signal_connect(GTK_OBJECT(toggle), "toggled", -- GTK_SIGNAL_FUNC(config_set_stereo), (gpointer)stream-1); -+ GTK_SIGNAL_FUNC(config_set_stereo), GINT_TO_POINTER(stream-1)); - - hbox = gtk_hbox_new(TRUE, 6); - gtk_widget_show(hbox); -@@ -2176,7 +2176,7 @@ int main(int argc, char **argv) - - if (! name) { - /* probe cards */ -- static char cardname[8]; -+ static char cardname[16]; - /* FIXME: hardcoded max number of cards */ - for (card_number = 0; card_number < 8; card_number++) { - sprintf(cardname, "hw:%d", card_number); -diff --git a/envy24control/levelmeters.c b/envy24control/levelmeters.c -index 24e00db..5933721 100644 ---- a/envy24control/levelmeters.c -+++ b/envy24control/levelmeters.c -@@ -65,7 +65,7 @@ static GdkGC *get_pen(int idx, int nRed, int nGreen, int nBlue) - return gc; - } - --static int get_index(gchar *name) -+static int get_index(const gchar *name) - { - int result; - -diff --git a/envy24control/new_process.c b/envy24control/new_process.c -index 7ea89a6..2168489 100644 ---- a/envy24control/new_process.c -+++ b/envy24control/new_process.c -@@ -20,9 +20,9 @@ int new_process(char * const cmd_line[MAX_PARAM]) - struct stat file_status; - - /* memory for storage of function pointers from the signal handling routines */ -- void (*int_stat)(); -- void (*quit_stat)(); -- void (*usr2_stat)(); -+ void (*int_stat)(int); -+ void (*quit_stat)(int); -+ void (*usr2_stat)(int); - - /* - * check command file -diff --git a/envy24control/profiles.c b/envy24control/profiles.c -index 8e23bfd..17a418c 100644 ---- a/envy24control/profiles.c -+++ b/envy24control/profiles.c -@@ -54,9 +54,9 @@ void subst_tilde_in_filename(char * const filename) - - if ((pos_after_tilde = strchr(filename, '~')) != NULL) { - pos_after_tilde++; -- strncpy(new_filename, getenv("HOME"), MAX_FILE_NAME_LENGTH); -- strncpy(new_filename + strlen(new_filename), pos_after_tilde, MAX_FILE_NAME_LENGTH - strlen(new_filename)); -- new_filename[MAX_FILE_NAME_LENGTH - 1] = '\0'; -+ strncpy(new_filename, getenv("HOME"), sizeof(new_filename) - 1); -+ strncpy(new_filename + strlen(new_filename), pos_after_tilde, sizeof(new_filename) - strlen(new_filename) - 1); -+ new_filename[sizeof(new_filename) - 1] = '\0'; - strncpy(filename, new_filename, MAX_FILE_NAME_LENGTH); - } - } -@@ -522,7 +522,7 @@ int reorganize_profiles(char * const buffer, const int max_length) - { - int profile_number, card_number, card_number_max; - int res; -- int pos_profile_begin, pos_profile_end, pos_card_begin, pos_card_end, pos_name_header; -+ int pos_profile_begin, pos_card_begin, pos_card_end, pos_name_header; - int pos_alsa_section_begin, pos_after_alsa_section; - char header[MAX_SEARCH_FIELD_LENGTH]; - void *buffer_copy = NULL; -@@ -547,7 +547,6 @@ int reorganize_profiles(char * const buffer, const int max_length) - compose_search_string(header, PROFILE_HEADER_TEMPL, profile_or_card_number_as_str, place_holder, MAX_SEARCH_FIELD_LENGTH); - header[MAX_SEARCH_FIELD_LENGTH - 1] = '\0'; - snprintf(buffer_copy + strlen(buffer_copy), max_length - strlen(buffer_copy), "%s\n", header); -- pos_profile_end = get_profile_end(buffer, profile_number); - /* search max card number in profile */ - card_number_max = get_max_card_number_in_profile(buffer, profile_number); - for (card_number = 0; card_number <= card_number_max; card_number++) -@@ -641,9 +640,9 @@ int save_restore_alsactl_settings(char * const tmpfile, const int card_number, c - - void compose_tmpfile_name(char * const tmpfile, const char * const cfgfile) - { -- strncpy(tmpfile, cfgfile, MAX_FILE_NAME_LENGTH); -+ strncpy(tmpfile, cfgfile, MAX_FILE_NAME_LENGTH - 1); - tmpfile[MAX_FILE_NAME_LENGTH - 1] = '\0'; -- strncpy(tmpfile + strlen(tmpfile), "_alsactl_tmp", MAX_FILE_NAME_LENGTH - strlen(tmpfile)); -+ strncpy(tmpfile + strlen(tmpfile), "_alsactl_tmp", MAX_FILE_NAME_LENGTH - strlen(tmpfile) - 1); - tmpfile[MAX_FILE_NAME_LENGTH - 1] = '\0'; - } - -diff --git a/envy24control/profiles.h b/envy24control/profiles.h -index 2063bff..b586291 100644 ---- a/envy24control/profiles.h -+++ b/envy24control/profiles.h -@@ -44,7 +44,7 @@ - #define MAX_PROFILE_SIZE 32768 - #define MAX_SEARCH_FIELD_LENGTH 1024 - #define MAX_FILE_NAME_LENGTH 1024 --#define MAX_NUM_STR_LENGTH 10 -+#define MAX_NUM_STR_LENGTH 11 - #define TOKEN_SEP "|" - #define SEP_CHAR ' ' - -diff --git a/envy24control/strstr_icase_blank.c b/envy24control/strstr_icase_blank.c -index 8078d2a..6b7c500 100644 ---- a/envy24control/strstr_icase_blank.c -+++ b/envy24control/strstr_icase_blank.c -@@ -48,6 +48,7 @@ int strstr_icase_blank(const char * const string1, const char * const string2) - char search_string[MAX_SEARCH_FIELD_LENGTH]; - char *pstr; - int pos_first_non_blank; -+ size_t len; - - strncpy(search_string, string2, MAX_SEARCH_FIELD_LENGTH); - search_string[MAX_SEARCH_FIELD_LENGTH - 1] = '\0'; -@@ -84,7 +85,11 @@ int strstr_icase_blank(const char * const string1, const char * const string2) - } - } - } -- strncpy(search_string, cmp_line, strlen(search_string)); -+ len = strlen(search_string); -+ if (len > sizeof(search_string) - 1) -+ len = sizeof(search_string) - 1; -+ strncpy(search_string, cmp_line, len); -+ search_string[len] = '\0'; - - position = 0; - while (position < strlen(string1)) --- -2.47.1 - - -From 787857d61a434b6afd6241106ea792f408e4cb59 Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Sun, 26 Jan 2025 13:05:40 +0100 -Subject: [PATCH 02/11] as10k1: fix gcc warnings - -Signed-off-by: Jaroslav Kysela ---- - as10k1/as10k1.c | 14 +++++++++----- - as10k1/assemble.c | 7 ++----- - as10k1/macro.c | 5 +---- - as10k1/parse.c | 3 ++- - as10k1/parse.h | 5 ++++- - 5 files changed, 18 insertions(+), 16 deletions(-) - -diff --git a/as10k1/as10k1.c b/as10k1/as10k1.c -index e226051..079f1c2 100644 ---- a/as10k1/as10k1.c -+++ b/as10k1/as10k1.c -@@ -244,6 +244,7 @@ void asm_open(char *name) - struct stat st; - char *next; - int backup_line_num,backup_file_num; -+ size_t rsize; - - - -@@ -284,8 +285,10 @@ void asm_open(char *name) - - buff[i].mem_end = buff[i].mem_start+st.st_size; - -- read(fd, buff[i].mem_start, st.st_size); -+ rsize = read(fd, buff[i].mem_start, st.st_size); - close(fd); -+ if (rsize != st.st_size) -+ as_exit("short read from input file\n"); - - #ifdef DEBUG - printf("File %s opened:\n",name); -@@ -383,13 +386,14 @@ void output_tram_line(struct list_head *line_head, int type) - val = __cpu_to_le32(tram_sym->data.value); - fwrite(&val,sizeof(u32),1,fp); - if(listing){ -- if(type==TYPE_TRAM_ADDR_READ) -+ if(type==TYPE_TRAM_ADDR_READ) { - fprintf(listfile,"\tRead"); -- else -+ } else { - fprintf(listfile,"\tWrite"); -+ } - -- fprintf(listfile,": 0x3%02x/0x2%02x (%s), offset 0x%07x\n",tram_sym->data.address,tram_sym->data.address, -- (prev_sym((&tram_sym->list)))->data.name,tram_sym->data.value); -+ fprintf(listfile,": 0x3%02x/0x2%02x (%s), offset 0x%07x\n",tram_sym->data.address,tram_sym->data.address, -+ (prev_sym((&tram_sym->list)))->data.name,tram_sym->data.value); - } - - } -diff --git a/as10k1/assemble.c b/as10k1/assemble.c -index 4508973..ced57c7 100644 ---- a/as10k1/assemble.c -+++ b/as10k1/assemble.c -@@ -22,6 +22,7 @@ - - #include"types.h" - #include"proto.h" -+#include"parse.h" - - extern int dbg_opt; - extern FILE *listfile; -@@ -45,7 +46,6 @@ void op(int op, int z,int w,int x,int y) - int w0, w1; - extern int dsp_code[DSP_CODE_SIZE]; - extern int ip; -- extern char op_codes[35][9]; - extern char listtemp[60]; - if (ip >= 0x200) - as_exit("to many instructions"); -@@ -306,7 +306,6 @@ void add_symbol(char *name, u16 type, u16 address, u32 value) - - extern int gpr_input_count,gpr_output_count,gpr_static_count,gpr_dynamic_count,gpr_control_count,gpr_constant_count; - struct sym *sym; -- struct tram *tmp_ptr; - extern struct list_head sym_head; - extern struct delay tram_delay[MAX_TANK_ADDR]; - extern struct lookup tram_lookup[MAX_TANK_ADDR]; -@@ -356,10 +355,8 @@ void add_symbol(char *name, u16 type, u16 address, u32 value) - else - tram_delay[tmp].write++; - }else{ -- tmp_ptr=(struct tram *)sym; - list_add_tail(&(((struct tram *)sym)->tram) , &(tram_lookup[tmp].tram) ); -- tmp_ptr=(struct tram *)sym; -- if(type== TYPE_TRAM_ADDR_READ) -+ if(type== TYPE_TRAM_ADDR_READ) - tram_lookup[tmp].read++; - else - tram_lookup[tmp].write++; -diff --git a/as10k1/macro.c b/as10k1/macro.c -index a01ad6f..70e4ef9 100644 ---- a/as10k1/macro.c -+++ b/as10k1/macro.c -@@ -72,14 +72,11 @@ void new_macro(char *symbol, char *line, char *operand) - void macro_expand(int macnum,char *operand ) - { - char *line,*next; -- int done=0,i,old; -+ int done=0,old; - extern unsigned int macro_depth; - extern int macro_line_num; - char string[MAX_LINE_LENGTH]; - -- //initialize macro use: -- i=0; -- - if(macro_depth+1> MAX_MAC_DEPTH) - as_exit("Error exceeded maximum number of recursive macro calls"); - -diff --git a/as10k1/parse.c b/as10k1/parse.c -index 8523717..02d4f5e 100644 ---- a/as10k1/parse.c -+++ b/as10k1/parse.c -@@ -18,6 +18,7 @@ - #include - #include - #include"types.h" -+#define DECLARE_OP_CODES - #include"parse.h" - #include"proto.h" - -@@ -87,7 +88,7 @@ int parse( char line_string[MAX_LINE_LENGTH], char *line) - if((tmp=ismacro(op_name_ptr)) != -1 ){ - if(defmacro==0) - macro_expand(tmp,strtok(NULL,"")); -- return(0); -+ return(0); - } - - if( (op_num=op_decode(op_name_ptr))==-1) { -diff --git a/as10k1/parse.h b/as10k1/parse.h -index be71daa..b79ed8b 100644 ---- a/as10k1/parse.h -+++ b/as10k1/parse.h -@@ -63,7 +63,9 @@ enum foo { - - }; - -- -+#ifndef DECLARE_OP_CODES -+extern char op_codes[NUM_OPS+1][9]; -+#else - char op_codes[NUM_OPS+1][9]= - { - "MACS", -@@ -110,6 +112,7 @@ char op_codes[NUM_OPS+1][9]= - "con", - "NotAnOp" - }; -+#endif - - //extern int file_num,source_line_num - --- -2.47.1 - - -From 6549725ec59eafb24e9f8d9ddacbf33305524fd3 Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Sun, 26 Jan 2025 13:12:05 +0100 -Subject: [PATCH 03/11] hdspconf: fix gcc warnings (const) - -Signed-off-by: Jaroslav Kysela ---- - hdspconf/src/HC_AboutText.h | 2 +- - hdspconf/src/HC_Aeb.cxx | 2 +- - hdspconf/src/HC_SpdifOut.cxx | 2 +- - hdspconf/src/HC_SyncCheck.h | 2 +- - 4 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/hdspconf/src/HC_AboutText.h b/hdspconf/src/HC_AboutText.h -index 2a76c40..1b579e5 100644 ---- a/hdspconf/src/HC_AboutText.h -+++ b/hdspconf/src/HC_AboutText.h -@@ -32,7 +32,7 @@ public: - HC_AboutText(int x, int y, int w, int h); - void draw(); - private: -- char *text; -+ const char *text; - }; - - #endif -diff --git a/hdspconf/src/HC_Aeb.cxx b/hdspconf/src/HC_Aeb.cxx -index d7a98d6..6df4848 100644 ---- a/hdspconf/src/HC_Aeb.cxx -+++ b/hdspconf/src/HC_Aeb.cxx -@@ -21,7 +21,7 @@ - #pragma implementation - #include "HC_Aeb.h" - --static void setAebStatus(char *ctl_name, int val, int card_index) -+static void setAebStatus(const char *ctl_name, int val, int card_index) - { - int err; - char card_name[6]; -diff --git a/hdspconf/src/HC_SpdifOut.cxx b/hdspconf/src/HC_SpdifOut.cxx -index 71c7bfe..674140b 100644 ---- a/hdspconf/src/HC_SpdifOut.cxx -+++ b/hdspconf/src/HC_SpdifOut.cxx -@@ -21,7 +21,7 @@ - #pragma implementation - #include "HC_SpdifOut.h" - --static void setSpdifBit(char *ctl_name, int val, int card_index) -+static void setSpdifBit(const char *ctl_name, int val, int card_index) - { - int err; - char card_name[6]; -diff --git a/hdspconf/src/HC_SyncCheck.h b/hdspconf/src/HC_SyncCheck.h -index 6aa6d13..c79d21f 100644 ---- a/hdspconf/src/HC_SyncCheck.h -+++ b/hdspconf/src/HC_SyncCheck.h -@@ -51,7 +51,7 @@ public: - void setAdatSyncStatus(unsigned char s); - void setWCStatus(unsigned char s); - private: -- char *adat_name; -+ const char *adat_name; - int h_step; - Fl_Box_Draw_F *draw_box; - }; --- -2.47.1 - - -From 9cb754084ba073342491704078f68e62f38fda7f Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Sun, 26 Jan 2025 13:16:53 +0100 -Subject: [PATCH 04/11] mixartloader: fix gcc warnings (string truncation) - -Signed-off-by: Jaroslav Kysela ---- - mixartloader/mixartloader.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/mixartloader/mixartloader.c b/mixartloader/mixartloader.c -index f34ed58..19a1615 100644 ---- a/mixartloader/mixartloader.c -+++ b/mixartloader/mixartloader.c -@@ -89,7 +89,8 @@ static int get_file_name(const char *key, unsigned int idx, char *fname) - for (p = buf + len; *p && isspace(*p); p++) - ; - if (*p == '/') { -- strncpy(fname, p, MAX_PATH); -+ strncpy(fname, p, MAX_PATH - 1); -+ fname[MAX_PATH - 1] = '\0'; - } else { - snprintf(fname, MAX_PATH, "%s/%s", DATAPATH, p); - } --- -2.47.1 - - -From 48128777e0f528d3aaf3eca65f9d16a393901c63 Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Sun, 26 Jan 2025 13:19:59 +0100 -Subject: [PATCH 05/11] pcxhrloader: fix gcc warnings (string truncation) - -Signed-off-by: Jaroslav Kysela ---- - pcxhrloader/pcxhrloader.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/pcxhrloader/pcxhrloader.c b/pcxhrloader/pcxhrloader.c -index de9420e..5cd1845 100644 ---- a/pcxhrloader/pcxhrloader.c -+++ b/pcxhrloader/pcxhrloader.c -@@ -89,7 +89,8 @@ static int get_file_name(const char *key, unsigned int idx, char *fname) - for (p = buf + len; *p && isspace(*p); p++) - ; - if (*p == '/') { -- strncpy(fname, p, MAX_PATH); -+ strncpy(fname, p, MAX_PATH - 1); -+ fname[MAX_PATH - 1] = '\0'; - } else { - snprintf(fname, MAX_PATH, "%s/%s", DATAPATH, p); - } --- -2.47.1 - - -From a2a0167ed9e91ad2c427fae31dc89daa4022b0cc Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Sun, 26 Jan 2025 13:21:13 +0100 -Subject: [PATCH 06/11] rmedigicontrol: fix gcc warnings (string size) - -Signed-off-by: Jaroslav Kysela ---- - rmedigicontrol/rmedigicontrol.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/rmedigicontrol/rmedigicontrol.c b/rmedigicontrol/rmedigicontrol.c -index 973299b..1119637 100644 ---- a/rmedigicontrol/rmedigicontrol.c -+++ b/rmedigicontrol/rmedigicontrol.c -@@ -29,7 +29,7 @@ void destroy(GtkWidget *widget,gpointer data) - int main(int argc, char *argv[]) - { - int card; -- char name[8],*err; -+ char name[16],*err; - snd_ctl_card_info_t *hw_info; - card_type_t type; - --- -2.47.1 - - -From 3bd780896e7f0316fa0b36e4445888546d3396cd Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Mon, 27 Jan 2025 09:28:53 +0100 -Subject: [PATCH 07/11] usx2yloader: fix gcc warnings (string size) - -Signed-off-by: Jaroslav Kysela ---- - usx2yloader/usx2yloader.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/usx2yloader/usx2yloader.c b/usx2yloader/usx2yloader.c -index 61583c2..363cbdc 100644 ---- a/usx2yloader/usx2yloader.c -+++ b/usx2yloader/usx2yloader.c -@@ -225,7 +225,8 @@ static int get_file_name(const char *key, unsigned int idx, char *fname) - for (p = buf + len; *p && isspace(*p); p++) - ; - if (*p == '/') { -- strncpy(fname, p, MAX_PATH); -+ strncpy(fname, p, MAX_PATH - 1); -+ fname[MAX_PATH - 1] = '\0'; - } else { - snprintf(fname, MAX_PATH, "%s/%s", DATAPATH, p); - } --- -2.47.1 - - -From cd9ee08dcb504822ac24f09c823b89f8391095f2 Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Mon, 27 Jan 2025 09:29:37 +0100 -Subject: [PATCH 08/11] vxloader: fix gcc warnings (string size) - -Signed-off-by: Jaroslav Kysela ---- - vxloader/vxloader.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/vxloader/vxloader.c b/vxloader/vxloader.c -index 69d654d..cc62e1e 100644 ---- a/vxloader/vxloader.c -+++ b/vxloader/vxloader.c -@@ -214,7 +214,8 @@ static int get_file_name(const char *key, unsigned int idx, char *fname) - for (p = buf + len; *p && isspace(*p); p++) - ; - if (*p == '/') { -- strncpy(fname, p, MAX_PATH); -+ strncpy(fname, p, MAX_PATH - 1); -+ fname[MAX_PATH - 1] = '\0'; - } else { - snprintf(fname, MAX_PATH, "%s/%s", DATAPATH, p); - } --- -2.47.1 - - -From 2420b2a6dfe33ae90cfa7b5bb1de04c008366ff9 Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Mon, 27 Jan 2025 09:34:38 +0100 -Subject: [PATCH 09/11] echomixer: fix various gcc warnings - -Signed-off-by: Jaroslav Kysela ---- - echomixer/echomixer.c | 20 ++++++-------------- - 1 file changed, 6 insertions(+), 14 deletions(-) - -diff --git a/echomixer/echomixer.c b/echomixer/echomixer.c -index 80124ba..adc10e1 100644 ---- a/echomixer/echomixer.c -+++ b/echomixer/echomixer.c -@@ -629,9 +629,7 @@ gint DrawMixer(gpointer unused) { - int OutPeak[ECHO_MAXAUDIOOUTPUTS]; - int VirLevel[ECHO_MAXAUDIOOUTPUTS]; - int VirPeak[ECHO_MAXAUDIOOUTPUTS]; -- static int InClip[ECHO_MAXAUDIOINPUTS]; -- static int OutClip[ECHO_MAXAUDIOOUTPUTS]; -- char str[8]; -+ char str[16]; - int i, o, dB; - GdkColor Grid={0x787878, 0, 0, 0}; - GdkColor Labels={0x9694C4, 0, 0, 0}; -@@ -647,13 +645,8 @@ gint DrawMixer(gpointer unused) { - update_rect.height = Mixheight; - GetVUmeters(InLevel, InPeak, OutLevel, OutPeak, VirLevel, VirPeak); - -- if (!gc) { -+ if (!gc) - gc=gdk_gc_new(gtk_widget_get_parent_window(Mixdarea)); -- for (i=0; istyle->black_gc, TRUE, 0, 0, Mixwidth, Mixheight); - -@@ -1693,7 +1686,7 @@ void ToggleWindow(GtkWidget *widget, gpointer window) { - // Scan all controls and sets up the structures needed to access them. - int OpenControls(const char *card, const char *cardname) { - int err, i, o; -- int numid, count, items, item; -+ int numid, items, item; - snd_hctl_t *handle; - snd_hctl_elem_t *elem; - snd_ctl_elem_id_t *id; -@@ -1726,7 +1719,6 @@ int OpenControls(const char *card, const char *cardname) { - continue; - snd_hctl_elem_get_id(elem, id); - numid=snd_ctl_elem_id_get_numid(id); -- count=snd_ctl_elem_info_get_count(info); - if (!strcmp("Monitor Mixer Volume", snd_ctl_elem_id_get_name(id))) { - if (!mixerId) { - mixerId=numid; -@@ -1879,7 +1871,7 @@ int main(int argc, char *argv[]) { - GtkWidget *label, *menu, *menuitem; - GSList *bgroup; - int err, i, o, n, cardnum, value; -- char hwname[8], cardname[32], load, save; -+ char hwname[16], cardname[32], load, save; - snd_ctl_card_info_t *hw_info; - - load=save=1; -@@ -1900,8 +1892,8 @@ int main(int argc, char *argv[]) { - } - if ((err=snd_ctl_card_info(ctlhandle, hw_info))>=0) { - if (!strncmp(snd_ctl_card_info_get_driver(hw_info), "Echo_", 5)) { -- strncpy(card, hwname, 7); -- hwname[7]=0; -+ strncpy(card, hwname, sizeof(hwname)-1); -+ card[sizeof(hwname)-1]=0; - strncpy(cardname, snd_ctl_card_info_get_name(hw_info), 31); - cardname[31]=0; - strncpy(cardId, snd_ctl_card_info_get_name(hw_info), 15); --- -2.47.1 - - -From 90c2aa263906492bd511d929feeb14ddf162d02d Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Mon, 27 Jan 2025 09:42:39 +0100 -Subject: [PATCH 10/11] ld10k1: fix various gcc warnings - -Signed-off-by: Jaroslav Kysela ---- - ld10k1/src/dl10k1.c | 2 +- - ld10k1/src/ld10k1.c | 8 ++++---- - ld10k1/src/ld10k1_driver.c | 4 ++-- - ld10k1/src/ld10k1_fnc.c | 2 +- - ld10k1/src/ld10k1_fnc1.c | 3 --- - ld10k1/src/lo10k1.c | 14 +++++++------- - 6 files changed, 15 insertions(+), 18 deletions(-) - -diff --git a/ld10k1/src/dl10k1.c b/ld10k1/src/dl10k1.c -index 42d54a1..b2f3a54 100644 ---- a/ld10k1/src/dl10k1.c -+++ b/ld10k1/src/dl10k1.c -@@ -354,7 +354,7 @@ int dump_load(int audigy, char *file_name) - fctrl = (ld10k1_ctl_dump_t *)ptr; - memset(ctrl, 0, sizeof(emu10k1_fx8010_control_gpr_t) * header->ctl_count); - for (i = 0; i < header->ctl_count; i++) { -- strcpy(ctrl[i].id.name, fctrl[i].name); -+ strcpy((char *)ctrl[i].id.name, fctrl[i].name); - ctrl[i].id.iface = EMU10K1_CTL_ELEM_IFACE_MIXER; - ctrl[i].id.index = fctrl[i].index; - ctrl[i].vcount = fctrl[i].vcount; -diff --git a/ld10k1/src/ld10k1.c b/ld10k1/src/ld10k1.c -index b0b5a9b..97be2c0 100644 ---- a/ld10k1/src/ld10k1.c -+++ b/ld10k1/src/ld10k1.c -@@ -77,7 +77,7 @@ void error(const char *fmt, ...) - va_end(va); - } - --static void log(const char *fmt, ...) -+static void alog(const char *fmt, ...) - { - va_list va; - -@@ -116,7 +116,7 @@ static void cleanup() - { - if (pidpath[0]) - unlink(pidpath); -- log("Exiting daemon"); -+ alog("Exiting daemon"); - } - - static void term_handler(int i) -@@ -247,7 +247,7 @@ int main(int argc, char *argv[]) - - pidfile = fopen(pidpath, "wt"); - if (!pidfile) { -- log("%s: pidfile (%s)\n", strerror(errno), pidpath); -+ alog("%s: pidfile (%s)\n", strerror(errno), pidpath); - return 1; - } - -@@ -263,7 +263,7 @@ int main(int argc, char *argv[]) - dup2(fileno(logfile), fileno(stdout)); - } - -- log("Starting daemon"); -+ alog("Starting daemon"); - } - - params.type = uses_pipe ? COMM_TYPE_LOCAL : COMM_TYPE_IP; -diff --git a/ld10k1/src/ld10k1_driver.c b/ld10k1/src/ld10k1_driver.c -index 38ee873..05b1415 100644 ---- a/ld10k1/src/ld10k1_driver.c -+++ b/ld10k1/src/ld10k1_driver.c -@@ -199,7 +199,7 @@ int ld10k1_update_driver(ld10k1_dsp_mgr_t *dsp_mgr) - if (!add_ctrl) - return LD10K1_ERR_NO_MEM; - for (i = 0, item = dsp_mgr->add_ctl_list; item != NULL; item = item->next, i++) { -- strcpy(add_ctrl[i].id.name, item->ctl.name); -+ strcpy((char *)add_ctrl[i].id.name, item->ctl.name); - add_ctrl[i].id.iface = EMU10K1_CTL_ELEM_IFACE_MIXER; - add_ctrl[i].id.index = item->ctl.index; - add_ctrl[i].vcount = item->ctl.vcount; -@@ -225,7 +225,7 @@ int ld10k1_update_driver(ld10k1_dsp_mgr_t *dsp_mgr) - if (!del_ids) - return LD10K1_ERR_NO_MEM; - for (i = 0, item = dsp_mgr->del_ctl_list; item != NULL; item = item->next, i++) { -- strcpy(del_ids[i].name, item->ctl.name); -+ strcpy((char *)del_ids[i].name, item->ctl.name); - del_ids[i].iface = EMU10K1_CTL_ELEM_IFACE_MIXER; - del_ids[i].index = item->ctl.index; - } -diff --git a/ld10k1/src/ld10k1_fnc.c b/ld10k1/src/ld10k1_fnc.c -index c88f4c0..7e99d55 100644 ---- a/ld10k1/src/ld10k1_fnc.c -+++ b/ld10k1/src/ld10k1_fnc.c -@@ -2152,7 +2152,7 @@ int ld10k1_conn_point_add(ld10k1_dsp_mgr_t *dsp_mgr, ld10k1_conn_point_t *point, - int allocgprcount = 0; - int allocinstrcount = 0; - unsigned int reserved[2]; -- unsigned int res[2]; -+ int res[2]; - int reservedcount = 0; - int usedreserved = 0; - -diff --git a/ld10k1/src/ld10k1_fnc1.c b/ld10k1/src/ld10k1_fnc1.c -index ddc43c6..c3ea754 100644 ---- a/ld10k1/src/ld10k1_fnc1.c -+++ b/ld10k1/src/ld10k1_fnc1.c -@@ -792,12 +792,9 @@ int ld10k1_fnc_name_find(int data_conn, int op, int size) - int ld10k1_fnc_name_rename(int data_conn, int op, int size) - { - ld10k1_fnc_name_t name_info; -- int ret; - int err; - ld10k1_patch_t *patch; - -- ret = -1; -- - if ((err = receive_msg_data(data_conn, &name_info, sizeof(ld10k1_fnc_name_t))) < 0) - return err; - -diff --git a/ld10k1/src/lo10k1.c b/ld10k1/src/lo10k1.c -index 93a9369..c1223cb 100644 ---- a/ld10k1/src/lo10k1.c -+++ b/ld10k1/src/lo10k1.c -@@ -473,8 +473,9 @@ static int transfer_patch(int udin, char *ctrl_opt, liblo10k1_emu_patch_t *ep, l - if (*ctrl_opt != ',') { - error("wrong ctrl option format - wrong separator beetwen subfunctions"); - return 1; -- } else -- *ctrl_opt++; -+ } else { -+ ctrl_opt++; -+ } - } - } - -@@ -691,8 +692,9 @@ static int transfer_native_patch(liblo10k1_dsp_patch_t *p, char *ctrl_opt) - if (*ctrl_opt != ',') { - error("wrong ctrl option format - wrong separator beetwen subfunctions"); - return 1; -- } else -- *ctrl_opt++; -+ } else { -+ ctrl_opt++; -+ } - } - } - -@@ -1466,7 +1468,6 @@ int main(int argc, char *argv[]) - - int opt_list; - int opt_setup; -- int opt_info; - int opt_add; - int opt_del; - int opt_con_add; -@@ -1526,7 +1527,6 @@ int main(int argc, char *argv[]) - opt_add = 0; - opt_del = 0; - opt_list_patch = NULL; -- opt_info = 0; - opt_con_add = 0; - opt_con_del = 0; - opt_debug = 0; -@@ -1618,7 +1618,7 @@ int main(int argc, char *argv[]) - opt_list_patch = optarg; - break; - case 'i': -- opt_info = 1; -+ /* nothing */ - break; - case 'q': - opt_con_add = 1; --- -2.47.1 - - -From 5eaadd15bda4cf0424ee2470a6d304a0c2ce10cb Mon Sep 17 00:00:00 2001 -From: Jaroslav Kysela -Date: Mon, 27 Jan 2025 11:02:21 +0100 -Subject: [PATCH 11/11] hdajackretask: fix reset_changes_boot() declaration - -Signed-off-by: Jaroslav Kysela ---- - hdajackretask/apply-changes.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/hdajackretask/apply-changes.h b/hdajackretask/apply-changes.h -index e08d66d..e431a0d 100644 ---- a/hdajackretask/apply-changes.h -+++ b/hdajackretask/apply-changes.h -@@ -9,7 +9,7 @@ gboolean apply_changes_reconfig(pin_configs_t* pins, int entries, int card, int - - gboolean apply_changes_boot(pin_configs_t* pins, int entries, int card, int device, - const char* model, const char* hints, GError** err); --gboolean reset_changes_boot(); -+gboolean reset_changes_boot(GError ** err); - - #endif - --- -2.47.1 - diff --git a/hdajackretask.desktop b/hdajackretask.desktop new file mode 100644 index 0000000..67b9e88 --- /dev/null +++ b/hdajackretask.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=HDAJackRetask +GenericName=Retask the audio jacks for the HDA sound driver +Comment=Retask the audio jacks for the HDA sound driver +Exec=hdajackretask +Terminal=false +Type=Application +Categories=Application;AudioVideo; +Version=0.9.4 diff --git a/hwmixvolume-python.patch b/hwmixvolume-python.patch deleted file mode 100644 index 6cbb12f..0000000 --- a/hwmixvolume-python.patch +++ /dev/null @@ -1,8 +0,0 @@ ---- alsa-tools-1.1.7/hwmixvolume/hwmixvolume~ 2018-10-16 10:08:36.000000000 +0200 -+++ alsa-tools-1.1.7/hwmixvolume/hwmixvolume 2018-10-16 12:39:39.639476411 +0200 -@@ -1,4 +1,4 @@ --#!/usr/bin/env python -+#!/usr/bin/env python3 - - # hwmixvolume - ALSA hardware mixer volume control applet - # Copyright (c) 2009-2010 Clemens Ladisch diff --git a/hwmixvolume.desktop b/hwmixvolume.desktop new file mode 100644 index 0000000..e3ea9c7 --- /dev/null +++ b/hwmixvolume.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=Hwmixvolume +GenericName=Control the volume of individual streams on sound cards that use hardware mixing +Comment=Control the volume of individual streams on sound cards that use hardware mixing +Exec=hwmixvolume +Icon=hwmixvolume +Terminal=false +Type=Application +Categories=Application;AudioVideo; +Version=0.9.4 diff --git a/hwmixvolume.png b/hwmixvolume.png new file mode 100644 index 0000000..28226ee Binary files /dev/null and b/hwmixvolume.png differ diff --git a/sources b/sources index 8fc480e..fe9653a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (alsa-tools-1.2.15.tar.bz2) = b2354fcaccfa316df7847438ad6b4ca3702be4ca88c46878c198a52ca6c659263b61759d4898e7a73acf64dd0e3004c103fa67a1cbdb2e53212f13368173be23 +b476a5afaa3ea3230855553ad59d259d alsa-tools-1.1.0.tar.bz2