mirror of
https://github.com/python/cpython.git
synced 2025-07-24 03:35:53 +00:00
MacPython on MacOSX DP4 gets started in the wrong directory. The workaround (ifdeffed by USE_ARGV0_CHDIR) is to do a chdir() to the folder part of our executable name.
This commit is contained in:
parent
574c0e22a5
commit
660bb1d1c7
2 changed files with 17 additions and 1 deletions
|
@ -256,7 +256,22 @@ init_common(int *argcp, char ***argvp, int embedded)
|
|||
} else {
|
||||
/* Create argc/argv. Do it before we go into the options event loop. */
|
||||
*argcp = PyMac_GetArgv(argvp, options.noargs);
|
||||
|
||||
#ifdef USE_ARGV0_CHDIR
|
||||
printf("argc=%d, argv[0]=%x=%s\n", *argcp, (*argvp)[0], (*argvp)[0]);
|
||||
if (*argcp >= 1 && (*argvp)[0] && (*argvp)[0][0]) {
|
||||
/* Workaround for MacOS X, which currently (DP4) doesn't set
|
||||
** the working folder correctly
|
||||
*/
|
||||
char app_wd[256], *p;
|
||||
|
||||
strncpy(app_wd, (*argvp)[0], 256);
|
||||
printf("Modifying dir, argv[0]=%s\n", (*argvp)[0]);
|
||||
p = strrchr(app_wd, ':');
|
||||
if ( p ) *p = 0;
|
||||
printf("app_wd=%s\n", app_wd);
|
||||
chdir(app_wd);
|
||||
}
|
||||
#endif
|
||||
/* Do interactive option setting, if allowed and <option> depressed */
|
||||
PyMac_InteractiveOptions(&options, argcp, argvp);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue