From 592732c3ff3b191691c8b077b460281f8482b9d3 Mon Sep 17 00:00:00 2001 From: Natalia Portillo Date: Tue, 22 Aug 2017 03:56:58 +0100 Subject: [PATCH] Check MMC features length before copying array. --- SCSI/MMC/Features.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/SCSI/MMC/Features.cs b/SCSI/MMC/Features.cs index e91f02a6e..3f84a2a3d 100644 --- a/SCSI/MMC/Features.cs +++ b/SCSI/MMC/Features.cs @@ -5782,6 +5782,8 @@ namespace DiscImageChef.Decoders.SCSI.MMC FeatureDescriptor desc = new FeatureDescriptor(); desc.Code = (ushort)((response[offset + 0] << 8) + response[offset + 1]); desc.Data = new byte[response[offset + 3] + 4]; + if (desc.Data.Length + offset > response.Length) + desc.Data = new byte[response.Length - offset]; Array.Copy(response, offset, desc.Data, 0, desc.Data.Length); offset += (uint)(desc.Data.Length);