Command -toc_of modifier ":short"

This commit is contained in:
2012-12-18 08:15:41 +00:00
parent e01ce72edb
commit feaa9a2ab1
7 changed files with 89 additions and 63 deletions

View File

@ -1486,6 +1486,8 @@ int Xorriso_option_temp_mem_limit(struct XorrisO *xorriso, char *size,
/* Option -toc */
/* @param flag bit0= short report form as with -dev, no table-of-content
*/
int Xorriso_option_toc(struct XorrisO *xorriso, int flag)
{
int ret, in_ret= 1000;
@ -1501,7 +1503,7 @@ int Xorriso_option_toc(struct XorrisO *xorriso, int flag)
}
ret= 1;
if(xorriso->outdev[0]!=0)
ret= Xorriso_toc(xorriso, 2);
ret= Xorriso_toc(xorriso, 2 | (flag & 1));
if(in_ret<ret)
ret= in_ret;
}
@ -1512,29 +1514,31 @@ int Xorriso_option_toc(struct XorrisO *xorriso, int flag)
/* Option -toc_of */
int Xorriso_option_toc_of(struct XorrisO *xorriso, char *which, int flag)
{
int ret= 0;
int ret= 0, toc_flag= 0;
if(strstr(which, ":short") != NULL)
toc_flag|= 1;
if(strncmp(which, "in", 2) == 0) {
if(xorriso->indev[0] == 0) {
Xorriso_msgs_submit(xorriso, 0, "-toc_of 'in' : No input drive aquired",
0, "NOTE", 0);
return(2);
}
ret= Xorriso_toc(xorriso, 0);
ret= Xorriso_toc(xorriso, toc_flag | 0);
} else if(strncmp(which, "out", 3) == 0) {
if(xorriso->outdev[0] == 0) {
Xorriso_msgs_submit(xorriso, 0, "-toc_of 'out' : No output drive aquired",
0, "NOTE", 0);
return(2);
}
ret= Xorriso_toc(xorriso, 2);
ret= Xorriso_toc(xorriso, toc_flag | 2);
} else if(strncmp(which, "all", 3) == 0) {
if(xorriso->indev[0] == 0 && xorriso->outdev[0] == 0) {
Xorriso_msgs_submit(xorriso, 0, "-toc_of 'all' : No drive aquired",
0, "NOTE", 0);
return(2);
}
ret= Xorriso_option_toc(xorriso, 0);
ret= Xorriso_option_toc(xorriso, toc_flag | 0);
} else {
sprintf(xorriso->info_text, "-toc_of: Unknown drive code ");
Text_shellsafe(which, xorriso->info_text, 1);