FanTranslatorsInternational / Kuriimu2

Kuriimu is a general purpose game translation project manager and toolkit for authors of fan translations and game mods.
GNU General Public License v3.0
308 stars 56 forks source link

STAR OCEAN Second Evolution [PCSG00714] [JPN] - Cannot extract so2psv.psarc #270

Open pnvnd opened 1 year ago

pnvnd commented 1 year ago

Game Name: STAR OCEAN Second Evolution [PCSG00714] [JPN] Console: PSVita Format extension(s): PSARC Type: archive Kuriimu2 version: 1.2.1-977136631

Bug details:

Unable to complete extraction for so2psv.psarc and stops at 25.92% with: An unhandled exception occurred. Refer to the log for more information. The application will be closed.

2022-10-23 20:37:25.337 -04:00 [FTL] An unhandled exception occurred.
System.IndexOutOfRangeException: Index was outside the bounds of the array.
   at ICSharpCode.SharpZipLib.Zip.Compression.DeflaterHuffman.BitReverse(Int32 toReverse)
   at ICSharpCode.SharpZipLib.Zip.Compression.InflaterHuffmanTree.BuildTree(IList`1 codeLengths)
   at ICSharpCode.SharpZipLib.Zip.Compression.InflaterDynHeader.CreateStateMachine()+MoveNext()
   at ICSharpCode.SharpZipLib.Zip.Compression.InflaterDynHeader.AttemptRead()
   at ICSharpCode.SharpZipLib.Zip.Compression.Inflater.Decode()
   at ICSharpCode.SharpZipLib.Zip.Compression.Inflater.Inflate(Byte[] buffer, Int32 offset, Int32 count)
   at ICSharpCode.SharpZipLib.Zip.Compression.Streams.InflaterInputStream.Read(Byte[] buffer, Int32 offset, Int32 count)
   at System.IO.Stream.CopyTo(Stream destination, Int32 bufferSize)
   at Kompression.Implementations.Decoders.ZLibDecoder.Decode(Stream input, Stream output)
   at plugin_sony.Archives.PSARC.PsarcStream.EnsureDecompressedBlock(Int32 blockIndex)
   at plugin_sony.Archives.PSARC.PsarcStream.Read(Byte[] buffer, Int32 offset, Int32 count)
   at System.IO.Stream.CopyTo(Stream destination, Int32 bufferSize)
   at Kuriimu2.EtoForms.Forms.Formats.ArchiveForm.<>c__DisplayClass53_0.<ExtractDirectory>b__1(CancellationTokenSource cts)
   at Kuriimu2.EtoForms.Forms.Models.AsyncOperation.<>c__DisplayClass16_0.<StartAsync>b__0()
   at System.Threading.Tasks.Task.InnerInvoke()
   at System.Threading.Tasks.Task.<>c.<.cctor>b__274_0(Object obj)
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location where exception was thrown ---
   at Kuriimu2.EtoForms.Forms.Models.AsyncOperation.StartAsync(Action`1 action)
   at Kuriimu2.EtoForms.Forms.Formats.ArchiveForm.ExtractDirectory(TreeGridItem item)
   at Kuriimu2.EtoForms.Forms.Formats.ArchiveForm.extractDirectoryCommand_Executed(Object sender, EventArgs e)
   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__139_0(Object state)
   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

image