aboutsummaryrefslogtreecommitdiff
path: root/usr.sbin/burncd
diff options
context:
space:
mode:
authorSøren Schmidt <sos@FreeBSD.org>2000-12-26 11:56:15 +0000
committerSøren Schmidt <sos@FreeBSD.org>2000-12-26 11:56:15 +0000
commite3b9882dc4b086146aa65f75b1b3cb37def8b82b (patch)
treee23498f3f0cc17e1a81410c22a6f062b421576ac /usr.sbin/burncd
parentdec35f9164e50870e97bdc9990ac84fdc11bd61e (diff)
downloadsrc-e3b9882dc4b086146aa65f75b1b3cb37def8b82b.tar.gz
src-e3b9882dc4b086146aa65f75b1b3cb37def8b82b.zip
Update to match the progress interface on blank command.
Notes
Notes: svn path=/head/; revision=70362
Diffstat (limited to 'usr.sbin/burncd')
-rw-r--r--usr.sbin/burncd/burncd.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/usr.sbin/burncd/burncd.c b/usr.sbin/burncd/burncd.c
index 660e28bc215b..e60c21a7571a 100644
--- a/usr.sbin/burncd/burncd.c
+++ b/usr.sbin/burncd/burncd.c
@@ -35,6 +35,7 @@
#include <err.h>
#include <sysexits.h>
#include <fcntl.h>
+#include <sys/errno.h>
#include <sys/ioctl.h>
#include <sys/stat.h>
#include <sys/cdio.h>
@@ -121,10 +122,24 @@ main(int argc, char **argv)
break;
}
if (!strcmp(argv[arg], "blank")) {
+ int error, percent;
if (!quiet)
- fprintf(stderr, "blanking CD, please wait..\n");
+ fprintf(stderr, "blanking CD, please wait..\r");
if (ioctl(fd, CDRIOCBLANK) < 0)
err(EX_IOERR, "ioctl(CDRIOCBLANK)");
+ while (1) {
+ sleep(1);
+ error = ioctl(fd, CDRIOCGETPROGRESS, &percent);
+ if (percent > 0 && !quiet)
+ fprintf(stderr,
+ "blanking CD - %d %% done"
+ " \r",
+ percent);
+ if (error || percent == 100)
+ break;
+ }
+ if (!quiet)
+ printf("\n");
continue;
}
if (!strcmp(argv[arg], "audio") || !strcmp(argv[arg], "raw")) {