111 112 extra_jargc = (sizeof(const_extra_jargs) / sizeof(char *)) > 1 113 ? sizeof(const_extra_jargs) / sizeof(char *) 114 : 0; // ignore the null terminator index 115 116 if (main_jargc > 0 && extra_jargc > 0) { // combine extra java args 117 jargc = main_jargc + extra_jargc; 118 list = JLI_List_new(jargc + 1); 119 120 for (i = 0 ; i < extra_jargc; i++) { 121 JLI_List_add(list, JLI_StringDup(const_extra_jargs[i])); 122 } 123 124 for (i = 0 ; i < main_jargc ; i++) { 125 JLI_List_add(list, JLI_StringDup(const_jargs[i])); 126 } 127 128 // terminate the list 129 JLI_List_add(list, NULL); 130 jargv = list->elements; 131 } else { // no extra args, business as usual 132 jargc = main_jargc; 133 jargv = (char **) const_jargs; 134 } 135 } 136 137 JLI_InitArgProcessing(jargc > 0, const_disable_argfile); 138 139 #ifdef _WIN32 140 { 141 int i = 0; 142 if (getenv(JLDEBUG_ENV_ENTRY) != NULL) { 143 printf("Windows original main args:\n"); 144 for (i = 0 ; i < __argc ; i++) { 145 printf("wwwd_args[%d] = %s\n", i, __argv[i]); 146 } 147 } 148 } 149 JLI_CmdToArgs(GetCommandLine()); 150 margc = JLI_GetStdArgc(); | 111 112 extra_jargc = (sizeof(const_extra_jargs) / sizeof(char *)) > 1 113 ? sizeof(const_extra_jargs) / sizeof(char *) 114 : 0; // ignore the null terminator index 115 116 if (main_jargc > 0 && extra_jargc > 0) { // combine extra java args 117 jargc = main_jargc + extra_jargc; 118 list = JLI_List_new(jargc + 1); 119 120 for (i = 0 ; i < extra_jargc; i++) { 121 JLI_List_add(list, JLI_StringDup(const_extra_jargs[i])); 122 } 123 124 for (i = 0 ; i < main_jargc ; i++) { 125 JLI_List_add(list, JLI_StringDup(const_jargs[i])); 126 } 127 128 // terminate the list 129 JLI_List_add(list, NULL); 130 jargv = list->elements; 131 } else if (extra_jargc > 0) { // should never happen 132 fprintf(stderr, "EXTRA_JAVA_ARGS defined without JAVA_ARGS"); 133 abort(); 134 } else { // no extra args, business as usual 135 jargc = main_jargc; 136 jargv = (char **) const_jargs; 137 } 138 } 139 140 JLI_InitArgProcessing(jargc > 0, const_disable_argfile); 141 142 #ifdef _WIN32 143 { 144 int i = 0; 145 if (getenv(JLDEBUG_ENV_ENTRY) != NULL) { 146 printf("Windows original main args:\n"); 147 for (i = 0 ; i < __argc ; i++) { 148 printf("wwwd_args[%d] = %s\n", i, __argv[i]); 149 } 150 } 151 } 152 JLI_CmdToArgs(GetCommandLine()); 153 margc = JLI_GetStdArgc(); |