svn commit: r351737 - stable/12/sbin/fsck_msdosfs
Xin LI
delphij at FreeBSD.org
Tue Sep 3 07:02:19 UTC 2019
Author: delphij
Date: Tue Sep 3 07:02:18 2019
New Revision: 351737
URL: https://svnweb.freebsd.org/changeset/base/351737
Log:
MFC r351205: Use calloc().
Modified:
stable/12/sbin/fsck_msdosfs/fat.c
Directory Properties:
stable/12/ (props changed)
Modified: stable/12/sbin/fsck_msdosfs/fat.c
==============================================================================
--- stable/12/sbin/fsck_msdosfs/fat.c Tue Sep 3 07:02:02 2019 (r351736)
+++ stable/12/sbin/fsck_msdosfs/fat.c Tue Sep 3 07:02:18 2019 (r351737)
@@ -54,10 +54,10 @@ static int _readfat(int, struct bootblock *, u_int, u_
* 31...... ........ ........ .......0
* rrrr1111 11111111 11111111 mmmmmmmm FAT32 entry 0
* rrrrsh11 11111111 11111111 11111xxx FAT32 entry 1
- *
+ *
* 11111111 mmmmmmmm FAT16 entry 0
* sh111111 11111xxx FAT16 entry 1
- *
+ *
* r = reserved
* m = BPB media ID byte
* s = clean flag (1 = dismounted; 0 = still mounted)
@@ -166,11 +166,11 @@ static int
_readfat(int fs, struct bootblock *boot, u_int no, u_char **buffer)
{
off_t off;
- size_t len;
- *buffer = malloc(len = boot->FATsecs * boot->bpbBytesPerSec);
+ *buffer = calloc(boot->FATsecs, boot->bpbBytesPerSec);
if (*buffer == NULL) {
- perr("No space for FAT sectors (%zu)", len);
+ perr("No space for FAT sectors (%zu)",
+ (size_t)boot->FATsecs);
return 0;
}
@@ -205,20 +205,19 @@ readfat(int fs, struct bootblock *boot, u_int no, stru
u_char *buffer, *p;
cl_t cl;
int ret = FSOK;
- size_t len;
boot->NumFree = boot->NumBad = 0;
if (!_readfat(fs, boot, no, &buffer))
return FSFATAL;
- fat = malloc(len = boot->NumClusters * sizeof(struct fatEntry));
+ fat = calloc(boot->NumClusters, sizeof(struct fatEntry));
if (fat == NULL) {
- perr("No space for FAT clusters (%zu)", len);
+ perr("No space for FAT clusters (%zu)",
+ (size_t)boot->NumClusters);
free(buffer);
return FSFATAL;
}
- (void)memset(fat, 0, len);
if (buffer[0] != boot->bpbMedia
|| buffer[1] != 0xff || buffer[2] != 0xff
@@ -566,12 +565,13 @@ writefat(int fs, struct bootblock *boot, struct fatEnt
off_t off;
int ret = FSOK;
- buffer = malloc(fatsz = boot->FATsecs * boot->bpbBytesPerSec);
+ fatsz = boot->FATsecs * boot->bpbBytesPerSec;
+ buffer = calloc(boot->FATsecs, boot->bpbBytesPerSec);
if (buffer == NULL) {
- perr("No space for FAT sectors (%zu)", fatsz);
+ perr("No space for FAT sectors (%zu)",
+ (size_t)boot->FATsecs);
return FSFATAL;
}
- memset(buffer, 0, fatsz);
boot->NumFree = 0;
p = buffer;
if (correct_fat) {
More information about the svn-src-stable
mailing list