From: John Crispin Date: Sun, 11 Feb 2018 13:24:59 +0000 (+0100) Subject: strip trailing spaces from vfat labels X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=3d239815bb048041ec0d48cba273573d148ad7a9;p=oweals%2Ffstools.git strip trailing spaces from vfat labels Signed-off-by: John Crispin --- diff --git a/libblkid-tiny/vfat.c b/libblkid-tiny/vfat.c index 9f3d395..49b865a 100644 --- a/libblkid-tiny/vfat.c +++ b/libblkid-tiny/vfat.c @@ -302,11 +302,12 @@ static int probe_vfat(blkid_probe pr, const struct blkid_idmag *mag) { struct vfat_super_block *vs; struct msdos_super_block *ms; - const unsigned char *vol_label = 0; + unsigned char *vol_label = 0; unsigned char *vol_serno = NULL, vol_label_buf[12] = { 0 }; uint16_t sector_size = 0, reserved; uint32_t cluster_count, fat_size; const char *version = NULL; + int i; ms = blkid_probe_get_sb(pr, mag, struct msdos_super_block); if (!ms) @@ -418,6 +419,12 @@ static int probe_vfat(blkid_probe pr, const struct blkid_idmag *mag) } } + for (i = 10; i >= 0; i--) { + if (vol_label[i] != ' ') + break; + vol_label[i] = '\0'; + } + if (vol_label && memcmp(vol_label, no_name, 11)) blkid_probe_set_label(pr, (unsigned char *) vol_label, 11);