diff --git a/cgminer.c b/cgminer.c index 4c5b5da5..36bdf22e 100644 --- a/cgminer.c +++ b/cgminer.c @@ -5107,6 +5107,7 @@ int main(int argc, char *argv[]) bool pools_active = false; struct sigaction handler; struct thr_info *thr; + char *s; unsigned int k; int i, j; @@ -5157,7 +5158,9 @@ int main(int argc, char *argv[]) opt_kernel_path = alloca(PATH_MAX); strcpy(opt_kernel_path, CGMINER_PREFIX); cgminer_path = alloca(PATH_MAX); - strcpy(cgminer_path, dirname(argv[0])); + s = strdup(argv[0]); + strcpy(cgminer_path, dirname(s)); + free(s); strcat(cgminer_path, "/"); #ifdef WANT_CPUMINE // Hack to make cgminer silent when called recursively on WIN32