diff options
author | Jack Jansen <jack.jansen@cwi.nl> | 2002-01-02 22:53:38 (GMT) |
---|---|---|
committer | Jack Jansen <jack.jansen@cwi.nl> | 2002-01-02 22:53:38 (GMT) |
commit | 4b517854d0b99367d82523306465d6fc97da17d0 (patch) | |
tree | ccdc52ee3221bf6673e560c63895e18cf5b789b1 /Mac | |
parent | 1142d595eed6ee9a8bae0907d2347ddae0692651 (diff) | |
download | cpython-4b517854d0b99367d82523306465d6fc97da17d0.zip cpython-4b517854d0b99367d82523306465d6fc97da17d0.tar.gz cpython-4b517854d0b99367d82523306465d6fc97da17d0.tar.bz2 |
In MachoPython, don't simulate argc/argv unless we have argc=1 and argv[1]
starts with "-psn_". This means the drag-and-drop continues to work as
expected, but we can now also do
/Applications/Python.app/Contents/MacOS/python script.py
from the command line, which is a lot easier with debugging. Pressing <option>
at this point also has the expected effect of opening the options dialog!
Diffstat (limited to 'Mac')
-rw-r--r-- | Mac/Python/macmain.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/Mac/Python/macmain.c b/Mac/Python/macmain.c index b86b528..71b42e9 100644 --- a/Mac/Python/macmain.c +++ b/Mac/Python/macmain.c @@ -316,8 +316,14 @@ init_common(int *argcp, char ***argvp, int embedded) *argcp = 1; *argvp = emb_argv; } else { - /* Create argc/argv. Do it before we go into the options event loop. */ - *argcp = PyMac_GetArgv(argvp, PyMac_options.noargs); + /* Create argc/argv. Do it before we go into the options event loop. + ** In MachoPython we skip this step if we already have plausible + ** command line arguments. + */ +#if TARGET_API_MAC_OSX + if (*argcp == 2 && strncmp((*argvp)[1], "-psn_", 5) == 0) +#endif + *argcp = PyMac_GetArgv(argvp, PyMac_options.noargs); #if !TARGET_API_MAC_OSX #ifndef NO_ARGV0_CHDIR if (*argcp >= 1 && (*argvp)[0] && (*argvp)[0][0]) { |