I2P Address: [http://git.idk.i2p]

Skip to content
Snippets Groups Projects
Commit 45a38a54 authored by str4d's avatar str4d
Browse files

Only use original argc/v if there are arguments, otherwise use launch.properties or defaults

parent 7f471910
No related branches found
No related tags found
No related merge requests found
......@@ -32,13 +32,13 @@ extern int launchJVM(int, char**);
int
main(int argc, char** argv) {
//int read_options_size;
//char** read_options;
int read_options_size;
char** read_options;
int ret = 0;
//int current_argc = 0;
//int new_argc;
//char** new_argv;
//int i;
int new_argc;
char** new_argv;
int i;
#ifdef _WIN32
char currentDirectory[MAX_PATH+1];
#endif
......@@ -48,33 +48,37 @@ main(int argc, char** argv) {
SetWorkingDirectory(currentDirectory);
#endif
// Read in options from disk (launch.properties)
// or the default ones (if no launch.properties existed)
//readOptions(&read_options, &read_options_size);
// Construct a new argc & argv to pass to launchJVM
//new_argc = read_options_size + argc;
//new_argv = (char**)MemAlloc(sizeof(char*) * (new_argc+1));
// copy process name
//new_argv[0] = argv[0];
// copy arguments from properties file
//for(i = 1; i <= read_options_size; i++)
// new_argv[i] = read_options[i-1];
// copy argv arguments as arguments after the properties file
// (generally used as arguments for I2P)
//for(current_argc = 1; current_argc < argc; current_argc++)
// new_argv[i++] = argv[current_argc];
//new_argv[i] = NULL;
// options are no longer necessary -- free them up.
//if(read_options != 0)
// free(read_options);
//ret = launchJVM(new_argc, new_argv);
//free(new_argv);
ret = launchJVM(argc, argv);
// If there are command-line arguments, just use them
if(argc > 1) {
ret = launchJVM(argc, argv);
} else {
// Read in options from disk (launch.properties)
// or the default ones (if no launch.properties existed)
readOptions(&read_options, &read_options_size);
// Construct a new argc & argv to pass to launchJVM
new_argc = read_options_size;
new_argv = (char**)MemAlloc(sizeof(char*) * (new_argc+1));
// copy process name
new_argv[0] = argv[0];
// copy arguments from properties file
for(i = 1; i <= read_options_size; i++)
new_argv[i] = read_options[i-1];
// copy argv arguments as arguments after the properties file
// (generally used as arguments for I2P)
//for(current_argc = 1; current_argc < argc; current_argc++)
// new_argv[i++] = argv[current_argc];
new_argv[i] = NULL;
// options are no longer necessary -- free them up.
if(read_options != 0)
free(read_options);
ret = launchJVM(new_argc, new_argv);
free(new_argv);
}
switch(ret) {
case ERROR_COULDNT_FIND_JVM:
case ERROR_COULDNT_INITIALIZE_JVM:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment