2010-01-05 Colin Watson <cjwatson@ubuntu.com>

* util/mkisofs/write.c (padblock_write): Switch size and nmemb
	arguments to fread so that we get a return value in bytes, rather
	than something that will normally be rounded down to 0.
	Adjust error handling to avoid producing garbage when size_t is not
	the same size as long long.
This commit is contained in:
Colin Watson 2010-01-05 16:09:02 +00:00
parent a136811886
commit 3bff18c5c6
2 changed files with 11 additions and 3 deletions

View file

@ -1,3 +1,11 @@
2010-01-05 Colin Watson <cjwatson@ubuntu.com>
* util/mkisofs/write.c (padblock_write): Switch size and nmemb
arguments to fread so that we get a return value in bytes, rather
than something that will normally be rounded down to 0.
Adjust error handling to avoid producing garbage when size_t is not
the same size as long long.
2010-01-05 Colin Watson <cjwatson@ubuntu.com>
* util/mkisofs/write.c (padblock_write): Check return value of

View file

@ -1437,9 +1437,9 @@ static int FDECL1(padblock_write, FILE *, outfile)
if (! fp)
error (1, errno, _("Unable to open %s"), boot_image_embed);
if (fread (buffer, 2048 * PADBLOCK_SIZE, 1, fp) == 0)
error (1, errno, _("cannot read %llu bytes from %s"),
(size_t) (2048 * PADBLOCK_SIZE), boot_image_embed);
if (fread (buffer, 1, 2048 * PADBLOCK_SIZE, fp) == 0)
error (1, errno, _("cannot read %d bytes from %s"),
2048 * PADBLOCK_SIZE, boot_image_embed);
if (fgetc (fp) != EOF)
error (1, 0, _("%s is too big for embed area"), boot_image_embed);
}