diff --git a/src/SharpCompress/Compressors/BZip2/CBZip2InputStream.cs b/src/SharpCompress/Compressors/BZip2/CBZip2InputStream.cs index a467942f..cf006dbc 100644 --- a/src/SharpCompress/Compressors/BZip2/CBZip2InputStream.cs +++ b/src/SharpCompress/Compressors/BZip2/CBZip2InputStream.cs @@ -542,9 +542,14 @@ internal class CBZip2InputStream : Stream { j++; } - selectorMtf[i] = (char)j; + if (i < BZip2Constants.MAX_SELECTORS) + { + selectorMtf[i] = (char)j; + } } + nSelectors = Math.Min(nSelectors, BZip2Constants.MAX_SELECTORS); + /* Undo the MTF values for the selectors. */ { var pos = new char[BZip2Constants.N_GROUPS];