From 5add6c072940af5dd04038e19258d97954bd34b2 Mon Sep 17 00:00:00 2001 From: Denis Molony Date: Sun, 31 Jul 2022 09:58:00 +1000 Subject: [PATCH] tidying --- .../bytezone/diskbrowser/nufx/Binary2.java | 24 ++++++++----------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/src/com/bytezone/diskbrowser/nufx/Binary2.java b/src/com/bytezone/diskbrowser/nufx/Binary2.java index d332749..6c2b1a3 100644 --- a/src/com/bytezone/diskbrowser/nufx/Binary2.java +++ b/src/com/bytezone/diskbrowser/nufx/Binary2.java @@ -46,7 +46,7 @@ public class Binary2 headers.add (binary2Header); totalBlocks += binary2Header.totalBlocks; - ptr += ((binary2Header.eof - 1) / 128 + 1) * 128 + 128; + ptr += ((binary2Header.eof - 1) / 128 + 2) * 128; } while (binary2Header.filesToFollow > 0); } @@ -60,26 +60,22 @@ public class Binary2 for (Binary2Header header : headers) { - if (header.compressed && buffer[header.ptr + 128] == 0x76 - && buffer[header.ptr + 129] == (byte) 0xFF) + byte[] dataBuffer = new byte[header.eof]; // this sux + System.arraycopy (buffer, header.ptr + 128, dataBuffer, 0, dataBuffer.length); + + if (header.compressed && dataBuffer[0] == 0x76 && dataBuffer[1] == (byte) 0xFF) { - byte[] tmp = new byte[header.eof]; // this sux - System.arraycopy (buffer, header.ptr + 128, tmp, 0, tmp.length); - String name = Utility.getCString (tmp, 4); + String name = Utility.getCString (dataBuffer, 4); Squeeze squeeze = new Squeeze (); - byte[] dataBuffer = squeeze.unSqueeze (tmp); - disk.addFile (name, header.fileType, header.auxType, header.created, header.modified, - dataBuffer, header.eof); + byte[] tmp = squeeze.unSqueeze (dataBuffer); + + disk.addFile (name, header.fileType, header.auxType, header.created, header.modified, tmp, + tmp.length); } else - { - byte[] dataBuffer = new byte[header.eof]; // this sux - System.arraycopy (buffer, header.ptr + 128, dataBuffer, 0, dataBuffer.length); disk.addFile (header.fileName, header.fileType, header.auxType, header.created, header.modified, dataBuffer, header.eof); - } - } disk.close ();