From 20cb2466e2642b9254ef9a2b8e59ea8e74f1cd10 Mon Sep 17 00:00:00 2001 From: Davide Depau Date: Tue, 14 Aug 2018 17:23:37 +0200 Subject: [PATCH] Do not overwrite previously written blocks --- .../java/eu/depau/ddroid/services/UsbAPIWriteService.kt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/eu/depau/ddroid/services/UsbAPIWriteService.kt b/app/src/main/java/eu/depau/ddroid/services/UsbAPIWriteService.kt index 2ce5741..2e2a76f 100644 --- a/app/src/main/java/eu/depau/ddroid/services/UsbAPIWriteService.kt +++ b/app/src/main/java/eu/depau/ddroid/services/UsbAPIWriteService.kt @@ -3,6 +3,7 @@ package eu.depau.ddroid.services import android.content.Intent import android.hardware.usb.UsbDevice import android.net.Uri +import android.util.Log import com.github.mjdev.libaums.UsbMassStorageDevice import eu.depau.ddroid.abc.UsbWriteService import eu.depau.ddroid.utils.getFileSize @@ -62,13 +63,15 @@ class UsbAPIWriteService : UsbWriteService("UsbAPIWriteService") { byteBuffer.position(0) blockDev.write(offset, byteBuffer) - offset++ + offset += bsFactor notify(offset * blockDev.blockSize * bsFactor, imageSize) } msDev.close() - return offset * blockDev.blockSize + val writtenBytes = offset * blockDev.blockSize + Log.d(TAG, "Written $writtenBytes bytes to ${usbDevice.name} using API") + return writtenBytes } } \ No newline at end of file