diff options
author | Haojian Zhuang <haojian.zhuang@linaro.org> | 2018-12-20 12:44:27 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-12-20 12:44:27 +0800 |
commit | 680c62d61bc28a17d3283976e3c3061cbec9993e (patch) | |
tree | e49292284b5bc17246927451170287c7d0c728b4 | |
parent | 370cde2b5c9aea6eb9f87fee5e669bd834f03ed6 (diff) | |
parent | 97586c62d421231c4213cd8d7ea0fbb7005c3ed3 (diff) | |
download | edk2-680c62d61bc28a17d3283976e3c3061cbec9993e.tar.gz |
Merge pull request #79 from johnstultz-work/fastboot-overflow-fix-hikeyupstream-hikey-aosp
EmbeddedPkg/AndroidFastboot: Fix overflow in Offset calculations
-rw-r--r-- | EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.c b/EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.c index 9074c6c77..854157161 100644 --- a/EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.c +++ b/EmbeddedPkg/Application/AndroidFastboot/AndroidFastbootApp.c @@ -227,11 +227,11 @@ FlashSparseImage ( if (EFI_ERROR (Status)) {
return Status;
}
- Image += ChunkHeader->ChunkSize * SparseHeader->BlockSize;
- Offset += ChunkHeader->ChunkSize * SparseHeader->BlockSize;
+ Image += (UINTN)ChunkHeader->ChunkSize * SparseHeader->BlockSize;
+ Offset += (UINTN)ChunkHeader->ChunkSize * SparseHeader->BlockSize;
break;
case CHUNK_TYPE_FILL:
- Left = ChunkHeader->ChunkSize * SparseHeader->BlockSize;
+ Left = (UINTN)ChunkHeader->ChunkSize * SparseHeader->BlockSize;
while (Left > 0) {
if (Left > FILL_BUF_SIZE) {
Count = FILL_BUF_SIZE;
@@ -254,7 +254,7 @@ FlashSparseImage ( Image += sizeof (UINT32);
break;
case CHUNK_TYPE_DONT_CARE:
- Offset += ChunkHeader->ChunkSize * SparseHeader->BlockSize;
+ Offset += (UINTN)ChunkHeader->ChunkSize * SparseHeader->BlockSize;
break;
default:
UnicodeSPrint (
|