Changeset 248:232cdf418e68 for uwsgi.c
Legend:
- Unmodified
- Added
- Removed
-
uwsgi.c
r247 r248 505 505 int blocking_workers = 0; 506 506 507 char *cwd ;507 char *cwd = NULL; 508 508 int ready_to_reload = 0; 509 509 int ready_to_die = 0; … … 520 520 int socket_type = 0; 521 521 socklen_t socket_type_len; 522 523 fprintf(stderr,"ARGV0 = %s %s\n", argv[0], argv[1]); 522 524 523 525 /* anti signal bombing */ … … 602 604 {"erlang-cookie", required_argument, 0, LONG_ARGS_ERLANG_COOKIE}, 603 605 {"nagios", no_argument, &nagios, 1}, 606 {"binary-path", required_argument, 0, LONG_ARGS_BINARY_PATH}, 604 607 {0, 0, 0, 0} 605 608 }; … … 614 617 uwsgi.rl.rlim_max = 0; 615 618 616 cwd = uwsgi_get_cwd ();617 uwsgi.binary_path = malloc (strlen (argv[0]) + 1);618 if (uwsgi.binary_path == NULL) {619 perror ("malloc()");620 exit (1);621 }622 strcpy (uwsgi.binary_path, argv[0]);623 619 624 620 env_reloads = getenv("UWSGI_RELOADS"); … … 671 667 #endif 672 668 669 if (uwsgi.binary_path == NULL) { 670 cwd = uwsgi_get_cwd (); 671 uwsgi.binary_path = malloc (strlen (argv[0]) + 1); 672 if (uwsgi.binary_path == NULL) { 673 perror ("malloc()"); 674 exit (1); 675 } 676 strcpy (uwsgi.binary_path, argv[0]); 677 } 678 673 679 #ifndef UNBIT 674 680 #ifndef ROCK_SOLID … … 1309 1315 #endif 1310 1316 fprintf (stderr, "binary reloading uWSGI...\n"); 1311 if (chdir (cwd)) { 1312 perror ("chdir()"); 1313 exit (1); 1317 if (cwd) { 1318 if (chdir (cwd)) { 1319 perror ("chdir()"); 1320 exit (1); 1321 } 1314 1322 } 1315 1323 /* check fd table (a module can obviosly open some fd on initialization...) */ … … 1328 1336 } 1329 1337 fprintf (stderr, "running %s\n", uwsgi.binary_path); 1330 strcpy (argv[0], uwsgi.binary_path); 1338 argv[0] = uwsgi.binary_path ; 1339 //strcpy (argv[0], uwsgi.binary_path); 1331 1340 execve (uwsgi.binary_path, argv, environ); 1332 1341 perror ("execve()"); … … 2319 2328 case LONG_ARGS_UID: 2320 2329 uwsgi.uid = atoi (optarg); 2330 break; 2331 case LONG_ARGS_BINARY_PATH: 2332 uwsgi.binary_path = optarg; 2321 2333 break; 2322 2334 #ifdef UWSGI_ERLANG
