Fix FileAccess.seek_end behavior on Android

This commit is contained in:
Anish Kumar 2026-02-01 17:51:07 +05:30
parent 98782b6c8c
commit 0c89904687
3 changed files with 52 additions and 3 deletions

View file

@ -203,8 +203,10 @@ internal abstract class DataAccess {
abstract fun write(buffer: ByteBuffer): Boolean
fun seekFromEnd(positionFromEnd: Long) {
val positionFromBeginning = max(0, size() - positionFromEnd)
seek(positionFromBeginning)
val positionFromBeginning = size() + positionFromEnd
if (positionFromBeginning >= 0) {
seek(positionFromBeginning)
}
}
abstract class FileChannelDataAccess(private val filePath: String) : DataAccess() {