Fix the fuse error that cannot handle the OTA package larger than 4 GiB

1. That read data will be blocked when adb sideload OTA package
2. An error(Out of bound read) occurs when installing OTA package by fuse

Test: as follows
    - adb sideload OTA package
    - install OTA package by install_with_fuse parameter

Change-Id: Ie53510d157f6ea4c92606b289fcb745d441918c8
Signed-off-by: luoqiangwei1 <luoqiangwei1@xiaomi.com>
This commit is contained in:
luoqiangwei1 2021-09-16 18:25:23 +08:00
parent 436a520a57
commit 95b85a4dcb

View file

@ -225,7 +225,7 @@ static int handle_release(void* /* data */, fuse_data* /* fd */, const fuse_in_h
// Fetch a block from the host into fd->curr_block and fd->block_data. // Fetch a block from the host into fd->curr_block and fd->block_data.
// Returns 0 on successful fetch, negative otherwise. // Returns 0 on successful fetch, negative otherwise.
static int fetch_block(fuse_data* fd, uint32_t block) { static int fetch_block(fuse_data* fd, uint64_t block) {
if (block == fd->curr_block) { if (block == fd->curr_block) {
return 0; return 0;
} }