Skip to content

Commit e88e76e

Browse files
committed
Addressed Copilot's comments
1 parent 64a355a commit e88e76e

File tree

2 files changed

+8
-5
lines changed

2 files changed

+8
-5
lines changed

src/image.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -380,7 +380,7 @@ static void wolfBoot_verify_signature_ecc(uint8_t key_slot,
380380
static inline int DecodeAsn1Tag(const uint8_t* input, int inputSz, int* inOutIdx,
381381
int* tag_len, uint8_t tag)
382382
{
383-
if ((*inOutIdx + 1) >= inputSz) {
383+
if (*inOutIdx < 0 || *inOutIdx >= inputSz || (*inOutIdx + 1) >= inputSz) {
384384
return -1;
385385
}
386386
if (input[*inOutIdx] != tag) {

src/qspi_flash.c

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -417,8 +417,10 @@ int spi_flash_read(uint32_t address, void *data, int len)
417417
int spi_flash_write(uint32_t address, const void *data, int len)
418418
{
419419
int ret = 0;
420+
int remaining = len;
420421
uint32_t xferSz, page, pages;
421422
uintptr_t addr;
423+
uint8_t* ptr = (uint8_t*)data;
422424

423425
#ifdef DEBUG_QSPI
424426
wolfBoot_printf("QSPI Flash Write: Len %d, %p -> 0x%x\n",
@@ -430,13 +432,12 @@ int spi_flash_write(uint32_t address, const void *data, int len)
430432
for (page = 0; page < pages; page++) {
431433
ret = qspi_write_enable();
432434
if (ret == 0) {
433-
uint8_t* ptr;
434-
xferSz = len - (page * FLASH_PAGE_SIZE);
435-
if (xferSz > FLASH_PAGE_SIZE)
435+
xferSz = (uint32_t)remaining;
436+
if (xferSz > FLASH_PAGE_SIZE) {
436437
xferSz = FLASH_PAGE_SIZE;
438+
}
437439

438440
addr = address + (page * FLASH_PAGE_SIZE);
439-
ptr = ((uint8_t*)data + (page * FLASH_PAGE_SIZE));
440441

441442
/* ------ Write Flash (page at a time) ------ */
442443
ret = qspi_transfer(QSPI_MODE_WRITE, FLASH_WRITE_CMD,
@@ -459,6 +460,8 @@ int spi_flash_write(uint32_t address, const void *data, int len)
459460
break;
460461
}
461462
/* write disable is automatic */
463+
remaining -= (int)xferSz;
464+
ptr += xferSz;
462465
}
463466
}
464467

0 commit comments

Comments
 (0)