ImageTool: Use realloc() for IR segment enlarging

This commit is contained in:
Marvin Häuser 2023-04-02 14:50:58 +02:00
parent 2f91fddf99
commit 0bfa467344

View File

@ -243,7 +243,6 @@ ImageConvertToXip (
uint64_t Index; uint64_t Index;
image_tool_segment_t *Segment; image_tool_segment_t *Segment;
void *Data; void *Data;
void *Memory;
assert (Image != NULL); assert (Image != NULL);
@ -254,19 +253,19 @@ ImageConvertToXip (
assert (Segment->DataSize <= Segment->ImageSize); assert (Segment->DataSize <= Segment->ImageSize);
Data = calloc (Segment->ImageSize, 1); Data = realloc (Segment->Data, Segment->ImageSize);
if (Data == NULL) { if (Data == NULL) {
return false; return false;
} }
memmove (Data, Segment->Data, Segment->DataSize); memset (
(char *)Data + Segment->DataSize,
Memory = Segment->Data; 0,
Segment->ImageSize - Segment->DataSize
);
Segment->Data = Data; Segment->Data = Data;
Segment->DataSize = Segment->ImageSize; Segment->DataSize = Segment->ImageSize;
free (Memory);
} }
Image->HeaderInfo.IsXip = true; Image->HeaderInfo.IsXip = true;