]> git.rkrishnan.org Git - pihpsdr.git/commitdiff
fix bug changing audio output device name when local audio active.
authorJohn Melton G0ORX <john.d.melton@googlemail.com>
Wed, 27 Nov 2019 20:50:14 +0000 (20:50 +0000)
committerJohn Melton G0ORX <john.d.melton@googlemail.com>
Wed, 27 Nov 2019 20:50:14 +0000 (20:50 +0000)
rx_menu.c

index 79b4c00c880109c2666223c91b4384b0c9f01399..1dbe4692ec355ef3d5936d4fa6c6c0cfb6a29a66 100644 (file)
--- a/rx_menu.c
+++ b/rx_menu.c
@@ -97,11 +97,15 @@ static void adc_cb(GtkWidget *widget, gpointer data) {
 static void local_audio_cb(GtkWidget *widget, gpointer data) {
 fprintf(stderr,"local_audio_cb: rx=%d\n",active_receiver->id);
 
-  if(active_receiver->audio_name==NULL) {
-    int i=gtk_combo_box_get_active(GTK_COMBO_BOX(output));
-    active_receiver->audio_name=g_new(gchar,strlen(output_devices[i].name)+1);
-    strcpy(active_receiver->audio_name,output_devices[i].name);
+  if(active_receiver->audio_name!=NULL) {
+    g_free(active_receiver->audio_name);
+    active_receiver->audio_name=NULL;
   }
+
+  int i=gtk_combo_box_get_active(GTK_COMBO_BOX(output));
+  active_receiver->audio_name=g_new(gchar,strlen(output_devices[i].name)+1);
+  strcpy(active_receiver->audio_name,output_devices[i].name);
+
   if(gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget))) {
     if(audio_open_output(active_receiver)==0) {
       active_receiver->local_audio=1;