From 4420dfee2aef72e8dc2359270459b9b69b145e6e Mon Sep 17 00:00:00 2001
From: karelrooted <karelrooted@gmail.com>
Date: Mon, 13 Nov 2023 20:43:01 +0800
Subject: [PATCH] player: don't remove all selected sub tracks in
 mp_dselect_track

fix secondary sub disappear after sub-reload, sub-remove.
---
 player/loadfile.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/player/loadfile.c b/player/loadfile.c
index 64fe190dc9..a0b9a75b7a 100644
--- a/player/loadfile.c
+++ b/player/loadfile.c
@@ -835,6 +835,8 @@ void mp_deselect_track(struct MPContext *mpctx, struct track *track)
 {
     if (track && track->selected) {
         for (int t = 0; t < num_ptracks[track->type]; t++) {
+            if (mpctx->current_track[t][track->type] != track)
+                continue;
             mp_switch_track_n(mpctx, t, track->type, NULL, 0);
             mark_track_selection(mpctx, t, track->type, -1); // default
         }