Просмотр исходного кода

Handle input or output len of 0 properly in lzo decoder.

Reimar Döffinger 14 лет назад
Родитель
Сommit
7d5082600e
1 измененных файлов с 8 добавлено и 0 удалено
  1. 8 0
      libavutil/lzo.c

+ 8 - 0
libavutil/lzo.c

@@ -175,6 +175,14 @@ int av_lzo1x_decode(void *out, int *outlen, const void *in, int *inlen) {
     int state= 0;
     int x;
     LZOContext c;
+    if (!*outlen || !*inlen) {
+        int res = 0;
+        if (!*outlen)
+            res |= AV_LZO_OUTPUT_FULL;
+        if (!*inlen)
+            res |= AV_LZO_INPUT_DEPLETED;
+        return res;
+    }
     c.in = in;
     c.in_end = (const uint8_t *)in + *inlen;
     c.out = c.out_start = out;