Cleaner loseWeight impl

master
Robinson 2023-01-24 11:00:22 +01:00
parent 0cf2d60450
commit 5a84fc5cbc
No known key found for this signature in database
GPG Key ID: 8E7DB78588BD6F5C
2 changed files with 14 additions and 4 deletions

View File

@ -366,7 +366,12 @@ internal abstract class BaseByteBuilder<K, V> {
* free the unnecessary memory
*/
private fun loseWeight() {
base = base.copyOf(size + 65535)
check = check.copyOf(size + 65535)
val nbase = IntArray(size + 65535)
System.arraycopy(base, 0, nbase, 0, size)
base = nbase
val ncheck = IntArray(size + 65535)
System.arraycopy(check, 0, ncheck, 0, check.size.coerceAtMost(ncheck.size))
check = ncheck
}
}

View File

@ -369,7 +369,12 @@ internal abstract class BaseCharBuilder<K, V> {
* free the unnecessary memory
*/
private fun loseWeight() {
base = base.copyOf(size + 65535)
check = check.copyOf(size + 65535)
val nbase = IntArray(size + 65535)
System.arraycopy(base, 0, nbase, 0, size)
base = nbase
val ncheck = IntArray(size + 65535)
System.arraycopy(check, 0, ncheck, 0, check.size.coerceAtMost(ncheck.size))
check = ncheck
}
}