]> granicus.if.org Git - python/commitdiff
Revert r80580 due to some unintended side effects. See issue #8202 for details.
authorNick Coghlan <ncoghlan@gmail.com>
Sun, 13 Jun 2010 06:50:39 +0000 (06:50 +0000)
committerNick Coghlan <ncoghlan@gmail.com>
Sun, 13 Jun 2010 06:50:39 +0000 (06:50 +0000)
Doc/using/cmdline.rst
Misc/NEWS
Modules/main.c

index d458ddbc8b374663045e49f1700ad5dee18d3f7e..8251a23d43a61301bb78571188d9f48011110f66 100644 (file)
@@ -95,9 +95,8 @@ source.
       file is not available.
 
    If this option is given, the first element of :data:`sys.argv` will be the
-   full path to the module file (while the module file is being located, the
-   first element will be set to ``"-m"``). As with the :option:`-c` option,
-   the current directory will be added to the start of :data:`sys.path`.
+   full path to the module file. As with the :option:`-c` option, the current
+   directory will be added to the start of :data:`sys.path`.
 
    Many standard library modules contain code that is invoked on their execution
    as a script.  An example is the :mod:`timeit` module::
index 0d353994ece6e140db2c0949acd16b9d7ed96ad2..891a3e9c32e2b496f23f43c3969f2678ba8acae7 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -12,6 +12,10 @@ What's New in Python 2.7 release candidate 2?
 Core and Builtins
 -----------------
 
+- Issue #8202: Previous change to ``sys.argv[0]`` handling for -m command line
+  option reverted due to unintended side effects on handling of ``sys.path``.
+  See tracker issue for details.
+
 - Issue #8941: decoding big endian UTF-32 data in UCS-2 builds could crash
   the interpreter with characters outside the Basic Multilingual Plane
   (higher than 0x10000).
index 7d735a80b3ae720471142739ab1a868d8d9f601e..a13d1663825db380bfc87e1cd223f41ae44609b7 100644 (file)
@@ -519,10 +519,12 @@ Py_Main(int argc, char **argv)
     }
 
     if (module != NULL) {
-        /* Backup _PyOS_optind and force sys.argv[0] = '-m'
-           so that PySys_SetArgv correctly sets sys.path[0] to ''*/
+        /* Backup _PyOS_optind and force sys.argv[0] = '-c'
+           so that PySys_SetArgv correctly sets sys.path[0] to ''
+           rather than looking for a file called "-m". See
+           tracker issue #8202 for details. */
         _PyOS_optind--;
-        argv[_PyOS_optind] = "-m";
+        argv[_PyOS_optind] = "-c";
     }
 
     PySys_SetArgv(argc-_PyOS_optind, argv+_PyOS_optind);