Victor Stinner
72967a4c1a
calculate_path() now fails with a fatal error when it fails to allocate memory
...
for module_search_path. It was already the case on _Py_char2wchar() failure.
2013-11-16 01:22:04 +01:00
Victor Stinner
ce4179d022
Don't mix wide character strings and byte strings (L"lib/python" VERSION): use
...
_Py_char2wchar() to decode lib_python instead.
Some compilers don't support concatenating literals: L"wide" "bytes". Example:
IRIX compiler.
2013-11-16 00:45:54 +01:00
Christian Heimes
de0e63bd9c
Issue #15905 : Fix theoretical buffer overflow in handling of sys.argv[0],
...
prefix and exec_prefix if the operation system does not obey MAXPATHLEN.
2013-07-22 12:54:21 +02:00
Christian Heimes
60a6067709
Issue #15905 : Fix theoretical buffer overflow in handling of sys.argv[0],
...
prefix and exec_prefix if the operation system does not obey MAXPATHLEN.
2013-07-22 12:53:32 +02:00
Victor Stinner
1a7425f67a
Issue #18203 : Replace malloc() with PyMem_RawMalloc() at Python initialization
...
* Replace malloc() with PyMem_RawMalloc()
* Replace PyMem_Malloc() with PyMem_RawMalloc() where the GIL is not held.
* _Py_char2wchar() now returns a buffer allocated by PyMem_RawMalloc(), instead
of PyMem_Malloc()
2013-07-07 16:25:15 +02:00
Andrew Svetlov
69032c81aa
Issue #16309 : Make PYTHONPATH= behavior the same as if PYTHONPATH not set at all.
...
Thanks to Armin Rigo and Alexey Kachayev.
2012-11-03 13:52:58 +02:00
Vinay Sajip
90db661b43
Closes #15307 : symlinks now work on OS X with framework Python builds. Patch by Ronald Oussoren.
2012-07-17 17:33:46 +01:00
Vinay Sajip
7ded1f0f69
Implemented PEP 405 (Python virtual environments).
2012-05-26 03:45:29 +01:00
Victor Stinner
99563b1df8
calculate_path() decodes the PYTHONPATH environment variable from the locale
...
encoding using _Py_char2wchar() instead of mbstowcs() to store undecodable
bytes as surrogates characters (PEP 383) instead of ignoring silently
the PYTHONPATH variable.
2011-06-20 14:45:54 +02:00
Antoine Pitrou
bb6eb857cf
Issue #10914 : fix bogus memory management in Modules/getpath.c, leading to a possible crash when calling Py_SetPath()
2011-03-17 23:34:33 +01:00
Martin v. Löwis
4d0d471a80
Merge branches/pep-0384.
2010-12-03 20:14:31 +00:00
Victor Stinner
47f637ce17
getpath.c: fix test to detech PyUnicode_AsWideChar() failure
...
PyUnicode_AsWideChar() result is signed, whereas it was stored in a unsigned
variable, and then the test was "n >= 0" which is always true to an unsigned
number. Patch written by Hallvard B Furuseth.
2010-11-10 14:12:20 +00:00
Victor Stinner
ae4836df6d
Issue #6011 : decode PREFIX, EXEC_PREFIX and PYTHONPATH variables using
...
_Py_char2wchar(), instead of L"" VAR hack, to escape undecodable bytes using
the surrogateescape error handler.
2010-11-08 23:49:47 +00:00
Victor Stinner
2158231433
Issue #6011 : getpath: decode VPATH env var from the locale encoding
...
Instead of casting it to wchar_t* without conversion. It fixes a bug if Python
is compiled a non-ascii directory, different than the source code directory,
with C locale.
2010-10-23 00:13:28 +00:00
Victor Stinner
61aad57dc9
Oops, fix my previous commit (r85583) on calculate_path()
...
path value may be changed, so keep a copy in a new variable.
2010-10-16 23:38:07 +00:00
Victor Stinner
dc4b2a712f
calculate_path(): use _Py_char2wchar() to decode the PATH environment variable,
...
to support surrogate characters
2010-10-16 23:34:22 +00:00
Victor Stinner
f4061dac60
_Py_wgetcwd() decodes the path using _Py_char2wchar() to support surrogates
2010-10-14 12:37:19 +00:00
Victor Stinner
4f3abb0f09
copy_absolute() keeps the relative path on _Py_wgetcwd() failure
...
.. instead of raising a fatal error. Even if the current directory was deleted,
use relative paths may still work (eg. run Python with "../python").
2010-10-07 23:29:18 +00:00
Victor Stinner
41c8b377d7
copy_absolute() raises a fatal error on _Py_wgetcwd() failure
2010-10-07 22:42:51 +00:00
Victor Stinner
4e31443c4d
Create fileutils.c/.h
...
* _Py_fopen() and _Py_stat() come from Python/import.c
* (_Py)_wrealpath() comes from Python/sysmodule.c
* _Py_char2wchar(), _Py_wchar2char() and _Py_wfopen() come from Modules/main.c
* (_Py)_wstat(), (_Py)_wgetcwd(), _Py_wreadlink() come from Modules/getpath.c
2010-10-07 21:45:39 +00:00
Victor Stinner
7ae7c87b05
_wrealpath() and _Py_wreadlink() support surrogates (PEP 383)
...
Use _Py_wchar2char() to support surrogate characters in the input path.
2010-10-07 11:06:49 +00:00
Kristján Valur Jónsson
3b69db27d7
issue 9910
...
Add a Py_SetPath api to override magic path computations when starting up python.
2010-09-27 05:32:54 +00:00
Antoine Pitrou
99773acf38
Fix indentation in Modules/getpath.c
2010-08-14 12:34:41 +00:00
Antoine Pitrou
eba57b6f3a
Add comments about Windows in Modules/getpath.c
2010-08-14 12:33:18 +00:00
Victor Stinner
e406ef41b1
Kill a gcc warning introduced by r83988
2010-08-14 00:07:14 +00:00