From b296c28fde45681b058eb320a3c4e1166420a95b Mon Sep 17 00:00:00 2001 From: Natalia Portillo Date: Fri, 23 Oct 2020 03:25:32 +0100 Subject: [PATCH] Fix XZ crashing filter when file is too small. --- Aaru.Filters/XZ.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Aaru.Filters/XZ.cs b/Aaru.Filters/XZ.cs index 722820c66..fd90c1fc5 100644 --- a/Aaru.Filters/XZ.cs +++ b/Aaru.Filters/XZ.cs @@ -79,6 +79,9 @@ namespace Aaru.Filters byte[] buffer = new byte[6]; byte[] footer = new byte[2]; + if(stream.Length < 8) + return false; + stream.Seek(0, SeekOrigin.Begin); stream.Read(buffer, 0, 6); stream.Seek(-2, SeekOrigin.End); @@ -98,9 +101,11 @@ namespace Aaru.Filters byte[] buffer = new byte[6]; byte[] footer = new byte[2]; + if(stream.Length < 8) + return false; + stream.Seek(0, SeekOrigin.Begin); stream.Read(buffer, 0, 6); - stream.Seek(0, SeekOrigin.Begin); stream.Seek(-2, SeekOrigin.End); stream.Read(footer, 0, 2); stream.Seek(0, SeekOrigin.Begin);