]> uap-core.de Git - uwplayer.git/commitdiff
allow multiple open commands in instance socket connection
authorOlaf Wintermann <olaf.wintermann@gmail.com>
Tue, 15 Jul 2025 18:50:20 +0000 (20:50 +0200)
committerOlaf Wintermann <olaf.wintermann@gmail.com>
Tue, 15 Jul 2025 18:50:20 +0000 (20:50 +0200)
application/settings.c

index 2ae1e067da897c731a926fc668e7e5024a9c2925..8ee4029dab1aaf3da3fb1294f9b45f6419ce22ba 100644 (file)
@@ -348,12 +348,17 @@ int CreateSingleInstanceSocket(Display *dp, Bool *already_running) {
     return 0;
 }
 
+static Boolean clearPlaylist = TRUE;
+
 static Boolean cmd_open(XtPointer data) {
     MainWindow *win = GetMainWindow();
     char *file = data;
     printf("open %s\n", file);
     
-    PlayListClear(win);
+    if(clearPlaylist) {
+        PlayListClear(win);
+        clearPlaylist = FALSE;
+    }
     PlayListAddFile(win, file);
     PlayListPlayTrack(win, win->playlist.tracks->size-1);
     
@@ -402,6 +407,7 @@ void* instance_socket_thread(void *data) {
             break;
         }
         printf("accept instance connection\n");
+        clearPlaylist = TRUE; // the first open command will clear the playlist
         
         msgbuf.pos = 0;
         msgbuf.size = 0;