]> uap-core.de Git - uwplayer.git/commitdiff
exclude WAYLAND_DISPLAY from env when starting mpv
authorOlaf Wintermann <olaf.wintermann@gmail.com>
Sat, 4 Jul 2026 09:06:59 +0000 (11:06 +0200)
committerOlaf Wintermann <olaf.wintermann@gmail.com>
Sat, 4 Jul 2026 09:06:59 +0000 (11:06 +0200)
application/player.c

index 5c4bcf29c73518741e99b1c1f35e3cb97bddeb3a..73b9e7c3222e6fbc707610083f6c0e4a2e33348a 100644 (file)
@@ -169,13 +169,26 @@ static int start_player_process(Player *player, MainWindow *win) {
     //posix_spawn_file_actions_adddup2(&actions, pin[0], STDIN_FILENO);
     //posix_spawn_file_actions_adddup2(&actions, pout[1], STDOUT_FILENO);
     
+    CX_ARRAY(char*, env);
+    cx_array_init(env, 96);
+    for(int i=0;environ[i] != NULL;i++) {
+        cxstring env_str = cx_str(environ[i]);
+        if(!cx_strprefix(env_str, "WAYLAND_DISPLAY")) {
+            //printf("ENV: %s\n", env_str.ptr);
+            cx_array_add(env, env_str.ptr);
+        }
+    }
+    char *n = NULL;
+    cx_array_add(env, n);
+    
     // start player
     pid_t player_pid;
-    if(posix_spawn(&player_pid, player_bin, &actions, NULL, args, environ)) {
+    if(posix_spawn(&player_pid, player_bin, &actions, NULL, args, env.data)) {
         perror("posix_spawn");
         return 1;
     }
     posix_spawn_file_actions_destroy(&actions);
+    free(env.data);
     
     player->process = player_pid;
     player->isactive = TRUE;