Commit Graph

5310 Commits

Author SHA1 Message Date
Victor Stinner e0f3268715 run_file(): encode the filename with PyUnicode_EncodeFSDefault() instead of
PyUnicode_AsUTF8String()
2010-10-17 19:34:51 +00:00
Amaury Forgeot d'Arc 20f11fe43c Fix compilation warning in _ctypes module on Window 2010-10-17 08:34:22 +00:00
Gregory P. Smith 68e0135e41 Fix multiprocessing Semaphore's on netbsd5. SEM_VALUE_MAX is defined
as (~0U) on NetBSD which was causing it to appear as -1 when used as
a signed int for _multprocessing.SemLock.SEM_VALUE_MAX.  This works
around the problem by substituting INT_MAX on systems where it appears
negative when used as an int.
2010-10-17 02:14:36 +00:00
Victor Stinner 49d3f2514b _PyImport_FixupExtension() and _PyImport_FindExtension() uses FS encoding
* Rename _PyImport_FindExtension() to _PyImport_FindExtensionUnicode():
   the filename becomes a Unicode object instead of byte string
 * Rename _PyImport_FixupExtension() to _PyImport_FixupExtensionUnicode():
   the filename becomes a Unicode object instead of byte string
2010-10-17 01:24:53 +00:00
Gregory P. Smith 3e85dfd15e applying netbsd-wizs-mod.patch from issue5510 -
fixes for netbsd (and dragonflybsd?)
2010-10-17 00:43:10 +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 168e117e0a Add an optional size argument to _Py_char2wchar()
_Py_char2wchar() callers usually need the result size in characters. Since it's
trivial to compute it in _Py_char2wchar() (O(1) whereas wcslen() is O(n)), add
an option to get it.
2010-10-16 23:16:16 +00:00
Georg Brandl 2a531395cd Get rid of a "unused static function" warning. 2010-10-16 20:33:11 +00:00
Victor Stinner 5a7913eb3b zipimport: catch _PyUnicode_AsString() failure in get_code_from_data()
It occurs if the path contains surrogates.
2010-10-16 11:29:07 +00:00
R. David Murray e16cda9ad8 #9862: On AIX PIPE_BUF is broken. Make it 512.
Patch by Sébastien Sablé.
2010-10-15 23:12:57 +00:00
Georg Brandl c01537f742 #9054: fix crash when using pyexpat with a system expat lib version 2.0.1. 2010-10-15 16:26:08 +00:00
Georg Brandl b4dac71a87 #5355: Provide mappings from Expat error numbers to string descriptions and backwards, in order to actually make it possible to analyze error codes provided by ExpatError. 2010-10-15 14:46:48 +00:00
Alexander Belopolsky 1bcbaab15a Issue 9183: Intern UTC timezone. 2010-10-14 17:03:51 +00:00
Antoine Pitrou b1c5496738 Issue #7523: Add SOCK_CLOEXEC and SOCK_NONBLOCK to the socket module,
where supported by the system.  Patch by Nikita Vetoshkin.
2010-10-14 15:05:38 +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 9a6692f6d7 Py_Main() uses _Py_wchar2char() to encode the filename in error messages 2010-10-14 10:51:24 +00:00
Georg Brandl 66c221e993 #9418: first step of moving private string methods to _string module. 2010-10-14 07:04:07 +00:00
Victor Stinner 052a04d34a Revert r85435 (and r85440): decode command line arguments from utf-8
Python exits with a fatal error if the command line contains an undecodable
argument. PyUnicode_FromString() fails at the first undecodable byte because it
calls the error handler, but error handlers are not ready before Python
initialization.
2010-10-13 23:24:06 +00:00
Alexander Belopolsky 59a289d16b Issue 9005: Removed dead code. 2010-10-13 22:54:34 +00:00
Victor Stinner a21350976e main(): catch PyUnicode_FromString() failure (exit) 2010-10-13 22:36:16 +00:00
Victor Stinner 90bbaa57f9 Issue #9992: On Mac OS X, decode command line arguments from utf-8 instead of
the locale encoding.
2010-10-13 22:15:06 +00:00
Benjamin Peterson eb1410fc40 constify to appease compiler warnings 2010-10-13 22:06:39 +00:00
Victor Stinner 8f6b6b0cc3 Issue #9992: Remove PYTHONFSENCODING environment variable. 2010-10-13 22:02:27 +00:00
Antoine Pitrou fc113eeb7d Define a "session_id_context" at context creation. This is recommended
for the OpenSSL server-side session cache.
2010-10-13 12:46:13 +00:00
Gregory P. Smith bd4dacb3f9 Fix compile on NetBSD 5.0 (or anything else using an old 0.9.9-dev OpenSSL). 2010-10-13 03:53:21 +00:00
Gregory P. Smith 2501aca628 fix compliation on NetBSD 2010-10-13 03:39:47 +00:00
Antoine Pitrou 04248a8d99 Issue #3873: Speed up unpickling from file objects which have a peek()
method.
2010-10-12 20:51:21 +00:00
Antoine Pitrou b0182c8ca5 Issue #10075: Add a session_stats() method to SSLContext objects. 2010-10-12 20:09:02 +00:00
Martin v. Löwis baecd7243a Upgrade to Unicode 6.0.0.
makeunicodedata.py: download all data files from unicode.org,
  switch to extracting Unihan data from zip file.
  Read linebreakprops and derivednormalizationprops even for
  old versions, even though they are not used in delta records.
test:unicode.py: U+11000 is now assigned, use U+14000 instead.
2010-10-11 22:42:28 +00:00
Antoine Pitrou 5b0e9e84e9 Issue #10055: Make json C89-compliant in UCS4 mode. 2010-10-09 15:24:28 +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
Victor Stinner beb4135b8c PyUnicode_AsWideCharString() takes a PyObject*, not a PyUnicodeObject*
All unicode functions uses PyObject* except PyUnicode_AsWideChar(). Fix the
prototype for the new function PyUnicode_AsWideCharString().
2010-10-07 01:02:42 +00:00
Victor Stinner ef12810f0c time: fix gcc warning
* Create format_arg variable to use the right types
 * Strip trailing spaces
2010-10-07 01:00:52 +00:00
Victor Stinner 4726e40e00 Rewrite RunMainFromImporter()
* fix argv0 reference counter if PyList_SetItem() fails
 * don't use complex if conditions, but a simple indentation and "goto error"
 * simplify error handling (remove Py_XDECREF(importer) from the error label)
 * don't set sys_path to NULL (it's useless, sys_path is a borrowed reference
   and sys_path is not a static variable)
 * try to write only one instruction per line for better readability
2010-10-06 23:24:57 +00:00
Victor Stinner 46c7b3b283 Issue #8670: Rename testcapi unicode test methods
* test_aswidechar() => unicode_aswidechar()
 * test_aswidecharstring() => unicode_aswidecharstring()
2010-10-02 11:49:31 +00:00
Victor Stinner ea3f305a25 Oops, revert unwanted _testcapi changes of r85174 2010-10-02 11:46:20 +00:00
Victor Stinner 749261e241 Issue #8670: ctypes.c_wchar supports non-BMP characters with 32 bits wchar_t 2010-10-02 11:25:35 +00:00
Victor Stinner 1c24bd0252 Issue #8870: PyUnicode_AsWideCharString() doesn't count the trailing nul character
And write unit tests for PyUnicode_AsWideChar() and PyUnicode_AsWideCharString().
2010-10-02 11:03:13 +00:00
Brian Curtin 9e88b5aeee Fix #10003. Add SIGBREAK to the set of valid signals on Windows.
This fixes a regression noticed by bzr, introduced by issue #9324.
2010-10-01 14:49:24 +00:00
Alexander Belopolsky 38e2996152 Issue #6608: time.asctime is now checking struct tm fields its input
before passing it to the system asctime.  Patch by MunSic Jeong.
2010-10-01 14:18:49 +00:00
Mark Dickinson c60371748b Issue #9599: Further accuracy tweaks to loghelper. For an integer n that's small enough to be converted to a float without overflow, log(n) is now computed as log(float(n)), and similarly for log10. 2010-09-29 19:06:36 +00:00
Victor Stinner 4c2e4fa242 Issue #9979: Use PyUnicode_AsWideCharString() in _ctypes module
* Convert unicode to wide character string before creating the PyCapsule
   object
 * Catch integer overflow
 * Avoid useless memset()
 * Prepare the support of surrogates
2010-09-29 10:37:16 +00:00
Victor Stinner b29047876d Issue #9979: Use PyUnicode_AsWideCharString() in time.strftime()
Allocate memory with PyMem_Alloc() instead of the PyBytes API. Prepare the
surrogates support.
2010-09-29 10:34:19 +00:00
Victor Stinner 449057f2fa Issue #9979: Use PyUnicode_AsWideCharString() for _locale.strcoll()
It simplifies the code and prepare the surrogates support.
2010-09-29 10:30:43 +00:00
Antoine Pitrou c8f0196454 Fix compilation under Windows 2010-09-28 22:03:27 +00:00
Antoine Pitrou 3e1fd27b74 Issue #9090: When a socket with a timeout fails with EWOULDBLOCK or EAGAIN,
retry the select() loop instead of bailing out.  This is because select()
can incorrectly report a socket as ready for reading (for example, if it
received some data with an invalid checksum).
2010-09-28 21:23:11 +00:00