Update of /cvsroot/alsa/alsa-tools/hdspmixer/src In directory sc8-pr-cvs1:/tmp/cvs-serv8198/src
Modified Files: HDSPMixerWindow.cxx HDSPMixerWindow.h Log Message: Thomas Charbonnel <[EMAIL PROTECTED]>: - fix some problems with default presets file handling. Index: HDSPMixerWindow.cxx =================================================================== RCS file: /cvsroot/alsa/alsa-tools/hdspmixer/src/HDSPMixerWindow.cxx,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- HDSPMixerWindow.cxx 24 Nov 2003 18:17:05 -0000 1.4 +++ HDSPMixerWindow.cxx 27 Nov 2003 10:42:40 -0000 1.5 @@ -397,7 +397,13 @@ { FILE *file; if ((file = fopen(file_name, "r")) == NULL) { + int i = 0; fl_alert("Error opening file %s for reading", file_name); + while (cards[i] != NULL) { + restoreDefaults(i++); + } + inputs->buttons->presets->preset_change(1); + return; } for (int speed = 0; speed < 3; ++speed) { for (int card = 0; card < 3; ++card) { @@ -533,6 +539,7 @@ h9632_an12_submix[2] = 1; num_modes = 3; phones = 0; + break; default: /* should never happen */ return; @@ -624,8 +631,18 @@ cards[2] = hdsp_card3; current_card = current_preset = 0; prefs = new Fl_Preferences(Fl_Preferences::USER, "thomasATundata.org", "HDSPMixer"); - if (!prefs->get("default_file", file_name_buffer, NULL, FL_PATH_MAX-1)) file_name = NULL; - else file_name = file_name_buffer; + if (!prefs->get("default_file", file_name_buffer, NULL, FL_PATH_MAX-1)) { + file_name = NULL; + } else { + struct stat buf; + if (!stat(file_name_buffer, &buf)) { + file_name = file_name_buffer; + } else { + file_name = NULL; + prefs->deleteEntry("default_file"); + prefs->flush(); + } + } for (int j = 0; j < 3; ++j) { for (int i = 0; i < 8; ++i) { data[j][0][i] = new HDSPMixerPresetData(); Index: HDSPMixerWindow.h =================================================================== RCS file: /cvsroot/alsa/alsa-tools/hdspmixer/src/HDSPMixerWindow.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- HDSPMixerWindow.h 3 Nov 2003 19:10:39 -0000 1.2 +++ HDSPMixerWindow.h 27 Nov 2003 10:42:40 -0000 1.3 @@ -35,6 +35,9 @@ #include <stdlib.h> #include <math.h> #include <sys/ioctl.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <unistd.h> #include <alsa/asoundlib.h> #include <sound/hdsp.h> #include "HDSPMixerCard.h" ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ Alsa-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-cvslog