fix argument allocation.
This commit is contained in:
parent
a95ea74f15
commit
624f543ec1
@ -569,7 +569,8 @@ start_node_thread(void) {
|
|||||||
|
|
||||||
// Workaround for AppInit2() arg parsing. Not ideal, but it works.
|
// Workaround for AppInit2() arg parsing. Not ideal, but it works.
|
||||||
int argc = 0;
|
int argc = 0;
|
||||||
char **argv = NULL;
|
char **argv = (char **)malloc((3 + 1) * sizeof(char **));
|
||||||
|
|
||||||
if (g_data_dir) {
|
if (g_data_dir) {
|
||||||
const int argl = 9 + strlen(g_data_dir) + 1;
|
const int argl = 9 + strlen(g_data_dir) + 1;
|
||||||
char *arg = (char *)malloc(argl);
|
char *arg = (char *)malloc(argl);
|
||||||
@ -584,18 +585,18 @@ start_node_thread(void) {
|
|||||||
argv = (char **)malloc((argc + 1) * sizeof(char **));
|
argv = (char **)malloc((argc + 1) * sizeof(char **));
|
||||||
argv[0] = (char *)"bitcoind";
|
argv[0] = (char *)"bitcoind";
|
||||||
argv[1] = arg;
|
argv[1] = arg;
|
||||||
if (g_rpc) {
|
|
||||||
argv[argc] = (char *)"-server";
|
|
||||||
argc++;
|
|
||||||
}
|
|
||||||
argv[argc] = NULL;
|
|
||||||
} else {
|
} else {
|
||||||
argc = 1;
|
argc = 1;
|
||||||
argv = (char **)malloc((argc + 1) * sizeof(char **));
|
|
||||||
argv[0] = (char *)"bitcoind";
|
argv[0] = (char *)"bitcoind";
|
||||||
argv[1] = NULL;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (g_rpc) {
|
||||||
|
argv[argc] = (char *)"-server";
|
||||||
|
argc++;
|
||||||
|
}
|
||||||
|
|
||||||
|
argv[argc] = NULL;
|
||||||
|
|
||||||
bool fRet = false;
|
bool fRet = false;
|
||||||
try {
|
try {
|
||||||
ParseParameters((const int)argc, (const char **)argv);
|
ParseParameters((const int)argc, (const char **)argv);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user