diff --git a/fastboot/device/flashing.cpp b/fastboot/device/flashing.cpp index 7e7e50715..fd6ff8ea4 100644 --- a/fastboot/device/flashing.cpp +++ b/fastboot/device/flashing.cpp @@ -135,7 +135,9 @@ int Flash(FastbootDevice* device, const std::string& partition_name) { return -EOVERFLOW; } WipeOverlayfsForPartition(device, partition_name); - return FlashBlockDevice(handle.fd(), data); + int result = FlashBlockDevice(handle.fd(), data); + sync(); + return result; } bool UpdateSuper(FastbootDevice* device, const std::string& super_name, bool wipe) { @@ -165,6 +167,7 @@ bool UpdateSuper(FastbootDevice* device, const std::string& super_name, bool wip return device->WriteFail("Unable to flash new partition table"); } fs_mgr_overlayfs_teardown(); + sync(); return device->WriteOkay("Successfully flashed partition table"); } @@ -204,5 +207,6 @@ bool UpdateSuper(FastbootDevice* device, const std::string& super_name, bool wip return device->WriteFail("Unable to write new partition table"); } fs_mgr_overlayfs_teardown(); + sync(); return device->WriteOkay("Successfully updated partition table"); }