From 3e12966e84e750acad0da37f74d4bd52b5da6c11 Mon Sep 17 00:00:00 2001 From: minjaesong Date: Sat, 6 Apr 2024 22:56:12 +0900 Subject: [PATCH] audio file reading minor improvement --- src/net/torvald/terrarum/audio/MusicContainer.kt | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/net/torvald/terrarum/audio/MusicContainer.kt b/src/net/torvald/terrarum/audio/MusicContainer.kt index 03230cd5e..6d101b6dd 100644 --- a/src/net/torvald/terrarum/audio/MusicContainer.kt +++ b/src/net/torvald/terrarum/audio/MusicContainer.kt @@ -145,15 +145,17 @@ class MusicContainer( var start = bytesRead - val fullbuf = ByteArray(totalSizeInBytes.toInt()) // make full block copies - for (i in 0 until fullCopyCounts) { + if (fullCopyCounts > 0) { + val fullbuf = ByteArray(totalSizeInBytes.toInt()) + // only read ONCE, you silly gdxMusic.forceInvoke("read", arrayOf(fullbuf)) reset() - System.arraycopy(fullbuf, 0, buffer, start, fullbuf.size) - - start += totalSizeInBytes.toInt() + for (i in 0 until fullCopyCounts) { + System.arraycopy(fullbuf, 0, buffer, start, fullbuf.size) + start += totalSizeInBytes.toInt() + } } // copy the remainders from the start of the samples