From: José Fonseca Date: Fri, 2 Mar 2012 10:34:54 +0000 (+0000) Subject: Invoke python when executing scripts. X-Git-Url: https://git.notmuchmail.org/git?a=commitdiff_plain;h=d5b4b0b0450aeab5ee0d73340def8d47ae333704;p=apitrace Invoke python when executing scripts. More robust --- diff --git a/cli/cli_diff.cpp b/cli/cli_diff.cpp index f03e02d..ffc0e30 100644 --- a/cli/cli_diff.cpp +++ b/cli/cli_diff.cpp @@ -49,10 +49,11 @@ usage(void) exit(1); } - char *args[3]; - args[0] = (char *) command.str(); - args[1] = (char *) "--help"; - args[2] = NULL; + char *args[4]; + args[0] = (char *) "python"; + args[1] = (char *) command.str(); + args[2] = (char *) "--help"; + args[3] = NULL; os::execute(args); } @@ -69,7 +70,8 @@ command(int argc, char *argv[]) os::String apitracePath = os::getProcessName(); - std::vectorargs; + std::vector args; + args.push_back("python"); args.push_back(command.str()); args.push_back("--apitrace"); args.push_back(apitracePath.str()); diff --git a/cli/cli_diff_images.cpp b/cli/cli_diff_images.cpp index 626a34f..3932fa2 100644 --- a/cli/cli_diff_images.cpp +++ b/cli/cli_diff_images.cpp @@ -49,10 +49,11 @@ usage(void) exit(1); } - char *args[3]; - args[0] = (char *) command.str(); - args[1] = (char *) "--help"; - args[2] = NULL; + char *args[4]; + args[0] = (char *) "python"; + args[1] = (char *) command.str(); + args[2] = (char *) "--help"; + args[3] = NULL; os::execute(args); } @@ -61,25 +62,21 @@ static int command(int argc, char *argv[]) { int i; - int ret; os::String command = find_command(); if (!command.length()) { return 1; } - char **args = new char* [argc + 1]; - args[0] = (char *) command.str(); + std::vector args; + args.push_back("python"); + args.push_back(command.str()); for (i = 1; i < argc; i++) { - args[i] = argv[i]; + args.push_back(argv[i]); } - args[argc] = NULL; + args.push_back(NULL); - ret = os::execute(args); - - delete [] args; - - return ret; + return os::execute((char * const *)&args[0]); } const Command diff_images_command = {