From: Karel Zak Date: Fri, 2 Apr 2010 10:49:07 +0000 (+0200) Subject: mkswap: zap bootbits on regular files X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1f7a33f1352f823654851bcfd0a2622396489824;p=util-linux mkswap: zap bootbits on regular files Signed-off-by: Karel Zak --- diff --git a/disk-utils/mkswap.c b/disk-utils/mkswap.c index 54951991..09a9a0a4 100644 --- a/disk-utils/mkswap.c +++ b/disk-utils/mkswap.c @@ -372,7 +372,7 @@ check_mount(void) { } static void -zap_bootbits(int fd, const char *devname, int force) +zap_bootbits(int fd, const char *devname, int force, int is_blkdev) { char *type = NULL; int whole = 0; @@ -382,7 +382,7 @@ zap_bootbits(int fd, const char *devname, int force) if (lseek(fd, 0, SEEK_SET) != 0) die(_("unable to rewind swap-device")); - if (is_whole_disk_fd(fd, devname)) { + if (is_blkdev && is_whole_disk_fd(fd, devname)) { /* don't zap bootbits on whole disk -- we know nothing * about bootloaders on the device */ whole = 1; @@ -625,7 +625,7 @@ main(int argc, char ** argv) { if (check) check_blocks(); - zap_bootbits(DEV, device_name, force); + zap_bootbits(DEV, device_name, force, S_ISBLK(statbuf.st_mode)); p->version = 1; p->last_page = PAGES-1;