From 75852933e7739ca726618533a5aa69f2a1d1322e Mon Sep 17 00:00:00 2001 From: Bad Diode Date: Thu, 27 Oct 2022 19:15:01 +0200 Subject: Fix extra element being added to rom.c --- tools/bin2carr/src/main.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/tools/bin2carr/src/main.c b/tools/bin2carr/src/main.c index 699db61..10ddcd8 100644 --- a/tools/bin2carr/src/main.c +++ b/tools/bin2carr/src/main.c @@ -64,6 +64,9 @@ write_array(FILE *file_in, FILE *file_out, char *arr_name, ElemSize elem_size) { case ELEM_S8: { u8 elem; n_read = fread(&elem, sizeof(u8), 1, file_in); + if (n_read == 0) { + break; + } fprintf(file_out, "0x%02x,", elem); break; } @@ -71,6 +74,9 @@ write_array(FILE *file_in, FILE *file_out, char *arr_name, ElemSize elem_size) { case ELEM_S16: { u16 elem; n_read = fread(&elem, sizeof(u16), 1, file_in); + if (n_read == 0) { + break; + } fprintf(file_out, "0x%04x,", elem); break; } @@ -78,6 +84,9 @@ write_array(FILE *file_in, FILE *file_out, char *arr_name, ElemSize elem_size) { case ELEM_S32: { u32 elem; n_read = fread(&elem, sizeof(u32), 1, file_in); + if (n_read == 0) { + break; + } fprintf(file_out, "0x%08x,", elem); break; } @@ -85,10 +94,16 @@ write_array(FILE *file_in, FILE *file_out, char *arr_name, ElemSize elem_size) { case ELEM_S64: { u64 elem; n_read = fread(&elem, sizeof(u64), 1, file_in); + if (n_read == 0) { + break; + } fprintf(file_out, "0x%016lx,", elem); break; } } + if (n_read == 0) { + break; + } if (counter == n_elem - 1) { fprintf(file_out, "\n"); -- cgit v1.2.1