New command -launch_frontend

This commit is contained in:
2012-12-20 20:22:58 +00:00
parent fccdbab373
commit cbb658991b
16 changed files with 525 additions and 36 deletions

View File

@ -534,7 +534,7 @@ int Xorriso_count_args(struct XorrisO *xorriso, int argc, char **argv,
""
};
static char arg3_commands[][40]= {
"append_partition",
"append_partition", "launch_frontend",
""
};
static char arg4_commands[][40]= {
@ -740,6 +740,9 @@ int Xorriso_cmd_sorting_rank(struct XorrisO *xorriso,
"* Dialog mode control:",
"dialog", "page", "use_readline", "reassure",
"* Support for frontend programs via stdin and stdout (3):",
"launch_frontend",
"* Scripting, dialog and program control features (3):",
"rollback_end", "end",
@ -899,7 +902,7 @@ return:
{
int ret, was_dashed, end_ret, num1, num2, cmd_data_size= 2 * SfileadrL;
int mem_idx, arg_count, i;
char *cmd, *original_cmd, *cmd_data= NULL, *arg1, *arg2;
char *cmd, *original_cmd, *cmd_data= NULL, *arg1, *arg2, *arg3;
Xorriso_alloc_meM(cmd_data, char, cmd_data_size);
@ -974,6 +977,10 @@ next_command:;
arg2= argv[(*idx)+1];
else
arg2= "";
if((*idx) + 2 < argc)
arg3= argv[(*idx) + 2];
else
arg3= "";
ret= 1;
if(cmd[0]=='#' || cmd[0]==0) {
@ -1005,8 +1012,7 @@ next_command:;
} else if(strcmp(cmd,"append_partition")==0) {
(*idx)+= 3;
ret= Xorriso_option_append_partition(xorriso, arg1, arg2, argv[*idx - 1],
0);
ret= Xorriso_option_append_partition(xorriso, arg1, arg2, arg3, 0);
} else if(strcmp(cmd,"application_id")==0) {
(*idx)++;
@ -1350,6 +1356,10 @@ next_command:;
(*idx)++;
ret= Xorriso_option_joliet(xorriso, arg1, 0);
} else if(strcmp(cmd, "launch_frontend") == 0) {
(*idx)+= 3;
ret= Xorriso_option_launch_frontend(xorriso, arg1, arg2, arg3, 0);
} else if(strcmp(cmd, "list_arg_sorting") == 0) {
ret= Xorriso_option_list_arg_sorting(xorriso, 0);