From 191f54eca2e9c8e4804d2ce81f9a1cbf76498f9f Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Tue, 13 May 2008 18:06:04 +0000 Subject: [PATCH] Handled -list_format with non MMC drives --- xorriso/xorriso_timestamp.h | 2 +- xorriso/xorrisoburn.c | 12 ++++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index 07a81b2b..09bc64ba 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2008.05.13.153837" +#define Xorriso_timestamP "2008.05.13.180624" diff --git a/xorriso/xorrisoburn.c b/xorriso/xorrisoburn.c index 9ee8152a..e99026e1 100644 --- a/xorriso/xorrisoburn.c +++ b/xorriso/xorrisoburn.c @@ -2918,12 +2918,20 @@ int Xorriso_list_formats(struct XorrisO *xorriso, int flag) if(ret<=0) return(0); + ret= burn_drive_get_drive_role(drive); + if(ret!=1) { + sprintf(xorriso->info_text, + "output device is not an MMC drive. -list_format does not apply"); + Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0); + ret= 2; goto ex; + } + ret = burn_disc_get_formats(drive, &status, &size, &dummy, &num_formats); - if(ret <= 0) { + if(ret<=0) { sprintf(xorriso->info_text, "Cannot obtain format list info"); Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "FAILURE", 0); - ret= 2; goto ex; + ret= 0; goto ex; } ret= Xorriso_toc(xorriso, 3); if(ret<=0)