summaryrefslogtreecommitdiffstats
path: root/libass
diff options
context:
space:
mode:
authorgreg <greg@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-08-13 22:52:45 +0000
committergreg <greg@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-08-13 22:52:45 +0000
commit629d7023da9b06ede89fa83632ab22aa8631e41f (patch)
tree159bc4f5a62a8a9a130d2cd77f19c31948bedf3b /libass
parentd41e860babc8d162379a62e337bbe9cb5ec9ae11 (diff)
downloadmpv-629d7023da9b06ede89fa83632ab22aa8631e41f.tar.bz2
mpv-629d7023da9b06ede89fa83632ab22aa8631e41f.tar.xz
Fix crash when event format is not specified
Patch by Andrew Savchenko <bircoph@gmail.com>. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29514 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libass')
-rw-r--r--libass/ass.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/libass/ass.c b/libass/ass.c
index 822f1e03f8..370063aacf 100644
--- a/libass/ass.c
+++ b/libass/ass.c
@@ -270,8 +270,15 @@ static int process_event_tail(ass_track_t* track, ass_event_t* event, char* str,
int i;
ass_event_t* target = event;
- char* format = strdup(track->event_format);
- char* q = format; // format scanning pointer
+ char* format;
+ char* q; // format scanning pointer
+
+ if (!track->event_format) {
+ track->event_format = strdup("Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text");
+ mp_msg(MSGT_ASS, MSGL_V, "Event format is broken, reseting to defaults.\n");
+ }
+
+ q = format = strdup(track->event_format);
if (track->n_styles == 0) {
// add "Default" style to the end