diff options
author | Rafał Miłecki <rafal@milecki.pl> | 2021-04-13 13:53:57 +0200 |
---|---|---|
committer | Rafał Miłecki <rafal@milecki.pl> | 2021-04-13 14:00:49 +0200 |
commit | d4f2c2914a6547ef6067dd0968c4970e913f17f0 (patch) | |
tree | ec99f72d907e3257fe2a26a7fb08fb37425015a9 /tools | |
parent | 489aa752d7276de8fd972d9554e0be938be64b4b (diff) | |
download | upstream-d4f2c2914a6547ef6067dd0968c4970e913f17f0.tar.gz upstream-d4f2c2914a6547ef6067dd0968c4970e913f17f0.tar.bz2 upstream-d4f2c2914a6547ef6067dd0968c4970e913f17f0.zip |
firmware-utils: mkmylofw: fix blocks padding
The old code didn't make sense as it was using "len" variable which was
guaranteed to be always 0. Loop right above broken code is:
while (len > 0) { }
With this recent ALIGN macro fix this resulted in subtracting block size
from 0 and calling write_out_padding() with a negative length.
To calculate amount of bytes needed for padding & alignment it should be
enough to use % 4.
Fixes: a2f66229450d ("firmware-utils: fix few random warnings")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/firmware-utils/src/mkmylofw.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/tools/firmware-utils/src/mkmylofw.c b/tools/firmware-utils/src/mkmylofw.c index 5722365ee3..93eab202d9 100644 --- a/tools/firmware-utils/src/mkmylofw.c +++ b/tools/firmware-utils/src/mkmylofw.c @@ -583,7 +583,7 @@ write_out_file(FILE *outfile, struct fw_block *block, uint32_t *crc) fclose(f); /* align next block on a 4 byte boundary */ - len = ALIGN(len,4) - block->size; + len = block->size % 4; if (write_out_padding(outfile, len, 0xFF, crc)) return -1; |