lavc/ass_split: check for NULL pointer in ff_ass_split_override_codes().
authorClément Bœsch <ubitux@gmail.com>
Sun, 30 Dec 2012 05:53:48 +0000 (06:53 +0100)
committerClément Bœsch <ubitux@gmail.com>
Sun, 30 Dec 2012 05:57:34 +0000 (06:57 +0100)
This is consistent with the other ff_ass_split_* functions.

It also fixes a crash when trying to split a dialog with text=NULL
(which seems to happen when the text of the dialog is empty); basically,
this commit fixes crashes when trying to encode an empty text subtitle
dialog (see subrip and mov_text encoders).

Fixes Ticket2048.

libavcodec/ass_split.c

index 4ef3092..ddf4675 100644 (file)
@@ -369,7 +369,7 @@ int ff_ass_split_override_codes(const ASSCodesCallbacks *callbacks, void *priv,
     char new_line[2];
     int text_len = 0;
 
-    while (*buf) {
+    while (buf && *buf) {
         if (text && callbacks->text &&
             (sscanf(buf, "\\%1[nN]", new_line) == 1 ||
              !strncmp(buf, "{\\", 2))) {