Bug fix: Big-Endian MIPS Volume Header boot file size was rounded up to full 2048. Thanks René Rebe.
This commit is contained in:
parent
b0230b6ac8
commit
f962d0da66
@ -555,9 +555,12 @@ static int make_mips_volume_header(Ecma119Image *t, uint8_t *buf, int flag)
|
|||||||
stream = iso_file_get_stream((IsoFile *) node);
|
stream = iso_file_get_stream((IsoFile *) node);
|
||||||
file_size = iso_stream_get_size(stream);
|
file_size = iso_stream_get_size(stream);
|
||||||
|
|
||||||
/* Shall i really round up to 2048 ? Steve says yes.*/
|
/* genisoimage rounds up to full multiples of 2048.
|
||||||
iso_msb(buf + (72 + 16 * idx) + 12,
|
libisofs did this too until 2020, but the arcload mips boot loader
|
||||||
((file_size + 2047) / 2048 ) * 2048, 4);
|
throws error if the rounded size is stored here.
|
||||||
|
So now the exact bytecount gets stored.
|
||||||
|
*/
|
||||||
|
iso_msb(buf + (72 + 16 * idx) + 12, file_size, 4);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user