From 032f4068646d6d29f4657eeb69425ec349dcaa7c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Reimar=20D=C3=B6ffinger?= <Reimar.Doeffinger@gmx.de>
Date: Mon, 24 Jan 2011 18:51:00 +0100
Subject: [PATCH] Handle input or output len of 0 properly in lzo decoder.

(cherry picked from commit 7d5082600ee63d879c2a325974ea09c8ace05019)
---
 libavutil/lzo.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/libavutil/lzo.c b/libavutil/lzo.c
index a876fc7776e..40a41a424db 100644
--- a/libavutil/lzo.c
+++ b/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;
-- 
GitLab