From ab025087f91b66ee8e23a16bc49eb0d9bd421d65 Mon Sep 17 00:00:00 2001 From: Phillip Susi Date: Mon, 5 Dec 2011 15:02:51 -0500 Subject: partx: don't print error when partition already doesn't exist If you run partx -d to delete partitions, and there are gaps in the sequence ( partition 2 exists, but 1 doesn't ), then it would complain that it had errors trying to remove the partitions that already don't exist. Changed to ignore the error when errno == ENXIO. Signed-off-by: Phillip Susi --- partx/partx.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'partx/partx.c') diff --git a/partx/partx.c b/partx/partx.c index d2fde3f4e..7c4235bb0 100644 --- a/partx/partx.c +++ b/partx/partx.c @@ -302,10 +302,15 @@ static int del_parts(int fd, const char *device, dev_t devno, } for (i = lower; i <= upper; i++) { - if (partx_del_partition(fd, i) == 0) { + rc = partx_del_partition(fd, i); + if (rc == 0) { if (verbose) printf(_("%s: partition #%d removed\n"), device, i); continue; + } else if (errno == ENXIO) { + if (verbose) + printf(_("%s: partition #%d already doesn't exist\n"), device, i); + continue; } rc = -1; if (verbose) -- cgit v1.2.3-55-g7522