@@ -1022,8 +1022,8 @@ def graalvm_vm_arg(java_arg):
10221022 exe_arg = f"--python.Executable={ coverage_launcher } "
10231023 agent_args_list = shlex .split (agent_args )
10241024 extra_args_c = []
1025- for i , arg in enumerate ( agent_args_list ) :
1026- extra_args_c .append (f 'new_args[{ i + 3 } ] = "' + arg .replace ("\" " , r"\"" ) + '";' )
1025+ for arg in agent_args_list :
1026+ extra_args_c .append ('new_args[arg_index++ ] = "' + arg .replace ("\" " , r"\"" ) + '";' )
10271027 extra_args_c = ' ' .join (extra_args_c )
10281028 c_code = dedent (f"""\
10291029 #include <stdio.h>
@@ -1032,14 +1032,15 @@ def graalvm_vm_arg(java_arg):
10321032
10331033 int main(int argc, char **argv) {{
10341034 char *new_args[argc + 3 + { len (agent_args_list )} ];
1035- new_args[0] = "{ original_launcher } ";
1036- new_args[1] = "--jvm";
1037- new_args[2] = "{ exe_arg } ";
1035+ int arg_index = 0;
1036+ new_args[arg_index++] = "{ original_launcher } ";
1037+ new_args[arg_index++] = "--jvm";
1038+ new_args[arg_index++] = "{ exe_arg } ";
10381039 { extra_args_c }
10391040 for (int i = 1; i < argc; i++) {{
1040- new_args[i + 3 + { len ( agent_args_list ) } ] = argv[i];
1041+ new_args[arg_index++ ] = argv[i];
10411042 }}
1042- new_args[argc + 3 + { len ( agent_args_list ) } ] = NULL;
1043+ new_args[arg_index ] = NULL;
10431044 execvp("{ original_launcher } ", new_args);
10441045 perror("execvp failed");
10451046 return 1;
0 commit comments