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!
*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]) {