Python: script names now include full path
Certain programs, like zim, calibre and now also apparently mercurial, rely on sys.argv[0] providing not just the script name but the full path. The Python docs [1] state the following on the matter: > argv[0] is the script name (it is operating system dependent whether this is a full pathname or not). Therefore, scripts should not expect to receive a full path. Unfortunately some do. While this can be considered a bug, there doesn't seem any reason not to provide the full path. Therefore we now provide the full path. [1] https://docs.python.org/3.5/library/sys.html?highlight=sys.argv#sys.argv
This commit is contained in:
parent
5a67b130b9
commit
d68aba4cfb
1 changed files with 1 additions and 1 deletions
|
@ -35,7 +35,7 @@ makeSetupHook {
|
|||
import sys
|
||||
import site
|
||||
import functools
|
||||
sys.argv[0] = '"'$(basename "$f")'"'
|
||||
sys.argv[0] = '"'$(readlink -f "$f")'"'
|
||||
functools.reduce(lambda k, p: site.addsitedir(p, k), ['"$([ -n "$program_PYTHONPATH" ] && (echo "'$program_PYTHONPATH'" | sed "s|:|','|g") || true)"'], site._init_pathinfo())
|
||||
'';
|
||||
|
||||
|
|
Loading…
Reference in a new issue