summaryrefslogtreecommitdiffstats
path: root/gtk/src/subtitlehandler.c
diff options
context:
space:
mode:
authorjstebbins <[email protected]>2009-09-29 19:16:03 +0000
committerjstebbins <[email protected]>2009-09-29 19:16:03 +0000
commit41bee2610064ca09d38888230479d391727afe39 (patch)
tree00135ea13e238a871b0260bfeface5e226093f57 /gtk/src/subtitlehandler.c
parent108fc8c802b2d1dd55a6f5138bf06a1f4182cf78 (diff)
LinGui: fix loading of multiple subtitles from a preset
under some circumstances the "default" and "forced" flags would end up on the incorrect entry in the list. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2850 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'gtk/src/subtitlehandler.c')
-rw-r--r--gtk/src/subtitlehandler.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/gtk/src/subtitlehandler.c b/gtk/src/subtitlehandler.c
index b9f015230..f26303925 100644
--- a/gtk/src/subtitlehandler.c
+++ b/gtk/src/subtitlehandler.c
@@ -328,16 +328,18 @@ ghb_set_pref_subtitle(gint titleindex, signal_user_data_t *ud)
jj = 0;
for (ii = 0; ii < count; ii++)
{
+ gint source;
+
subtitle = ghb_array_get_nth(pref_subtitle, ii);
lang = ghb_settings_get_string(subtitle, "SubtitleLanguage");
+ source = ghb_settings_get_int(subtitle, "SubtitleSource");
// If there are multiple subtitles using the same language, then
// select sequential tracks for each. The hash keeps track
// of the tracks used for each language.
- track = ghb_find_subtitle_track(titleindex, lang, track_indices);
+ track = ghb_find_subtitle_track(titleindex, lang, source, track_indices);
g_free(lang);
if (track >= -1)
{
- gint source;
GValue *dup = ghb_value_dup(subtitle);
lang = ghb_subtitle_track_lang(ud, track);
ghb_settings_set_int(dup, "SubtitleTrack", track);
@@ -364,7 +366,7 @@ ghb_set_pref_subtitle(gint titleindex, signal_user_data_t *ud)
GValue *settings;
gboolean burn;
- track = ghb_find_subtitle_track(titleindex, pref_lang, track_indices);
+ track = ghb_find_subtitle_track(titleindex, pref_lang, VOBSUB, track_indices);
if (track >= -1)
{
burn = mustBurn(ud, track);