For a sample size of 32 bits, the shift would overflow producing
undefined results.  Incidentally, in the only test currently using
32-bit samples, the output matches the reference exactly on most
systems meaning the bad 'max' value is never used.

Signed-off-by: Mans Rullgard <[email protected]>
---
 tests/tiny_psnr.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tests/tiny_psnr.c b/tests/tiny_psnr.c
index a53a670..b1bcc16 100644
--- a/tests/tiny_psnr.c
+++ b/tests/tiny_psnr.c
@@ -146,7 +146,7 @@ int main(int argc, char *argv[])
         }
     }
 
-    max = (1 << (8 * len)) - 1;
+    max = (1LL << (8 * len)) - 1;
 
     f[0] = fopen(argv[1], "rb");
     f[1] = fopen(argv[2], "rb");
-- 
1.7.12.3

_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to