vo: reset EOSD change detection when VO is re-configured
commit52f9abefa330345d02a1b84b3ad3777365341ef7
authorwm4 <wm4@mplayer2.org>
Mon, 12 Dec 2011 15:35:35 +0000 (12 16:35 +0100)
committerUoti Urpala <uau@mplayer2.org>
Mon, 12 Dec 2011 19:39:20 +0000 (12 21:39 +0200)
treec45740b0a52bca48a18b90460265d42059786041
parent2e1cdcb9e6263a7ca16151713338176ef7b1ee06
vo: reset EOSD change detection when VO is re-configured

This fixes a crash with vo_gl when the switch_ratio slave command is used
while a displaying an animated subtitle. switch_ratio will cause a config()
call to vo_gl, which will reset all state, including the EOSD state. Next
time the EOSD is rendered, its change detection will indicate that only
subtitle positions have changed. The render code will attempt to access
the EOSD data structures which have been deleted with config().

Fix this by forcing the change detection to indicate a full change if
config() has been called.

This only happens when doing switch_ratio with vo_gl, and the current
subtitle is only changing positions, i.e. mp_eosd_images_t.changed == 1.
libmpcodecs/vf_vo.c