]> granicus.if.org Git - python/commit
[3.5] bpo-32551: Consistently configure sys.path[0] (#5197)
authorNick Coghlan <ncoghlan@gmail.com>
Tue, 23 Jan 2018 10:48:11 +0000 (20:48 +1000)
committerlarryhastings <larry@hastings.org>
Tue, 23 Jan 2018 10:48:11 +0000 (02:48 -0800)
commit891c91d8d38848377a9f475242507510873eb9c3
tree54a4075a17a7b4367ae13a6a1969f2e590b85d7d
parent57fa0ab8911a70d91e5b60b8dc91f1085442a9e7
[3.5] bpo-32551: Consistently configure sys.path[0] (#5197)

Directory and zipfile execution previously added
the parent directory of the directory or zipfile
as sys.path[0] and then subsequently overwrote
it with the directory or zipfile itself.

This caused problems in isolated mode, as it
overwrote the "stdlib as a zip archive" entry
in sys.path, as the parent directory was
never added.

The attempted fix to that issue in bpo-29319
created the opposite problem in *non*-isolated
mode, by potentially leaving the parent
directory on sys.path instead of overwriting it.

This change fixes the root cause of the problem
by removing the whole "add-and-overwrite" dance
for sys.path[0], and instead simply never adds
the parent directory to sys.path in the first
place.

(cherry picked from commit d2977a3ae2cc6802921b1e3b6e9d13fcfbda872d)
Lib/test/test_cmd_line_script.py
Misc/NEWS.d/next/Security/2018-01-16-16-05-37.bpo-32551.U0z4W-.rst [new file with mode: 0644]
Modules/main.c