Kaydet (Commit) 660bb1d1 authored tarafından Jack Jansen's avatar Jack Jansen

MacPython on MacOSX DP4 gets started in the wrong directory. The workaround…

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.
üst 574c0e22
......@@ -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);
}
......
......@@ -9,6 +9,7 @@
#define TARGET_API_MAC_CARBON 1
#define TARGET_API_MAC_CARBON_NOTYET 1 /* Things we should do eventually, but not now */
#define USE_ARGV0_CHDIR /* Workaround for OSXDP4: change dir to argv[0] dir */
/* #define USE_GUSI2 /* Stdio implemented with GUSI 2 */
/* # define USE_GUSI1 /* Stdio implemented with GUSI 1 */
#define USE_MSL /* Use Mw Standard Library (as opposed to Plaugher C libraries) */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment