vo_aa: Fix subtitle display
authoral <al@b3059339-0415-0410-9bf9-f77b7e298cf2>
Mon, 15 Apr 2019 16:09:42 +0000 (16:09 +0000)
committeral <al@b3059339-0415-0410-9bf9-f77b7e298cf2>
Mon, 15 Apr 2019 16:09:42 +0000 (16:09 +0000)
Override subtitle font (stored in sub_font) too.

This fixes a regression probably introduced at
the time the separate subtitle font was added
in 2007 (SVN r23356).

All in all, the subtitle and OSD support of vo aa
was a hack from the time it was added. If we choose
to evolve the subtitle code in MPlayer, this hack
will have to be replaced sooner or later.

git-svn-id: svn://git.mplayerhq.hu/mplayer/trunk@38126 b3059339-0415-0410-9bf9-f77b7e298cf2

libvo/vo_aa.c

index 86accb9..bd1b966 100644 (file)
@@ -92,6 +92,7 @@ static int osdx, osdy;
 static int osd_text_length = 0;
 int aaconfigmode=1;
 font_desc_t* vo_font_save = NULL;
+font_desc_t* sub_font_save = NULL;
 static struct SwsContext *sws=NULL;
 
 /* configuration */
@@ -250,7 +251,8 @@ config(uint32_t width, uint32_t height, uint32_t d_width,
     /* now init our own 'font' */
     if(!vo_font_save) vo_font_save = vo_font;
     if(vo_font == vo_font_save) {
-      vo_font=malloc(sizeof(font_desc_t));//if(!desc) return NULL;
+      sub_font_save = sub_font;
+      sub_font=vo_font=malloc(sizeof(font_desc_t));//if(!desc) return NULL;
       memset(vo_font,0,sizeof(font_desc_t));
       vo_font->pic_a[0]=malloc(sizeof(raw_file));
       memset(vo_font->pic_a[0],0,sizeof(raw_file));
@@ -517,6 +519,10 @@ uninit(void) {
       vo_font = vo_font_save;
       vo_font_save = NULL;
     }
+    if(sub_font_save) {
+      sub_font = sub_font_save;
+      sub_font_save = NULL;
+    }
     aa_close(c);
 }