Commit Graph

6241 Commits

Author SHA1 Message Date
Serhiy Storchaka affac0062d Issue #24703: Fixed resource leak on error in bsddb.verify().
Original patch by Pankaj Sharma.
2015-07-24 08:05:45 +03:00
Serhiy Storchaka 81c670d540 Initialize buf.outobj in multibyte encoder (closes issue #24702).
Patch by pankaj.s01.
2015-07-24 07:44:42 +03:00
Raymond Hettinger fe13eac341 Issue #19663: Improve error message for defaultdict. 2015-07-20 03:08:09 -04:00
Benjamin Peterson 65192c1756 improve style of the convert macro (#24655)
Patch by Brian Cain.
2015-07-18 10:59:13 -07:00
Serhiy Storchaka be8c6ae56e Issue #24611: Fixed compiling the posix module on non-Windows platforms
without mknod() or makedev() (e.g. on Unixware).
2015-07-12 16:41:29 +03:00
Serhiy Storchaka 7865f218b4 Issue #18684: Fixed reading out of the buffer in the re module. 2015-07-06 13:58:24 +03:00
Serhiy Storchaka 84af51d1b3 Issue #24456: Fixed possible buffer over-read in adpcm2lin() and lin2adpcm()
functions of the audioop module.  Fixed SystemError when the state is not a
tuple.  Fixed possible memory leak.
2015-06-28 17:51:40 +03:00
Benjamin Peterson 1c72acf24c ensure internal buffer is large enough for string after flushing (closes #24481) 2015-06-27 14:52:41 -05:00
Antoine Pitrou 0d2fac1fba Issue #24489: ensure a previously set C errno doesn't disturb cmath.polar(). 2015-06-23 14:31:11 +02:00
Serhiy Storchaka f0aa88f6e8 Fixed indentation of Python examples in C comments. 2015-06-11 00:06:27 +03:00
Serhiy Storchaka c7797dc748 Issue #19543: Emit deprecation warning for known non-text encodings.
Backported issues #19619: encode() and decode() methods and constructors
of str, unicode and bytearray classes now emit deprecation warning for known
non-text encodings when Python is ran with the -3 option.

Backported issues #20404: io.TextIOWrapper (and hence io.open()) now uses the
internal codec marking system added to emit deprecation warning for known non-text
encodings at stream construction time when Python is ran with the -3 option.
2015-05-31 20:21:00 +03:00
Serhiy Storchaka dc967c137c Fixed the array module in unicode disabled build (regression of issue20014). 2015-05-31 11:56:48 +03:00
Serhiy Storchaka 062bed289b Issue #24264: Fixed buffer overflow in the imageop module. 2015-05-31 09:05:10 +03:00
Serhiy Storchaka 5127ed727c Issue #24115: Update uses of PyObject_IsTrue(), PyObject_Not(),
PyObject_IsInstance(), PyObject_RichCompareBool() and _PyDict_Contains()
to check for and handle errors correctly.
2015-05-30 17:45:12 +03:00
Serhiy Storchaka 1e95340bc3 Issue #24326: Fixed audioop.ratecv() with non-default weightB argument.
Original patch by David Moore.
2015-05-30 00:53:26 +03:00
Serhiy Storchaka 80cb186b49 Issue #24257: Fixed segmentation fault in sqlite3.Row constructor with faked
cursor type.
2015-05-22 11:00:40 +03:00
Serhiy Storchaka 25598f35d7 Issue #24091: Fixed various crashes in corner cases in cElementTree. 2015-05-18 18:28:57 +03:00
Serhiy Storchaka b70091a8d5 Issue #20014: array.array() now accepts unicode typecodes. Based on patch by
Vajrasky Kok.
2015-05-16 17:11:41 +03:00
Benjamin Peterson f465e0f929 merge 2.7.10 release branch 2015-05-15 12:19:41 -04:00
Benjamin Peterson 5863a39603 deque is not varsized, so using Py_SIZE is nonsensical (closes #24162) 2015-05-15 12:19:18 -04:00
Raymond Hettinger 3aee092ecb Defend against a mutation during comparison 2015-05-11 20:00:25 -07:00
Benjamin Peterson 72c0141f03 ensure .keywords is always a dict 2015-05-09 00:23:41 -04:00
Benjamin Peterson 36691efe7b fix libffi compilation on FreeBSD (#23042)
Patch from Marc-Andre Lemburg.
2015-05-08 21:31:36 -04:00
Larry Hastings 101b054c32 Issue #20274: When calling a _sqlite.Connection, it now complains if passed
any keyword arguments.  Previously it silently ignored them.  Also: Remove
ignored and erroneous "kwargs" parameters from three METH_VARARGS methods
on _sqlite.Connection.
2015-05-08 09:56:29 -07:00
Raymond Hettinger 79f2c5b8e0 Defer deleted item decref until after the deque is restored to a consistent state. 2015-05-02 10:53:27 -07:00
Raymond Hettinger 89543dd992 Issues #24099, #24100, and #24101: Fix free-after-use bug in heapq. 2015-05-02 10:26:57 -07:00
Benjamin Peterson 3a34a72e78 remove extern definition, since it's in a header file (closes #24058) 2015-04-26 15:55:06 -04:00
Serhiy Storchaka 656ffdb4de Issue #16840. Turn off bignum support in tkinter with with Tcl earlier than 8.5.8
(tclTomMath.h was broken) and non-final Tcl 8.6.
2015-04-21 21:17:33 +03:00
Serhiy Storchaka 02d0298f41 Issue #16840: Turn on support of bignums only in final release of Tcl 8.5. 2015-04-20 14:05:37 +03:00
Serhiy Storchaka 9aa16d93c9 Issue #23842: os.major(), os.minor() and os.makedev() now support ints again. 2015-04-20 09:21:23 +03:00
doko@ubuntu.com 9e7ece271f - Use PLATDIR for the platform directory everywhere (refactoring only) 2015-04-13 21:55:08 +02:00
Serhiy Storchaka 461295443f Issue #21859: Corrected FileIO docstrings. 2015-04-10 16:08:33 +03:00
Benjamin Peterson 9c5a8d4e23 remove extra arguments in arg parsing format codes (closes #23875) 2015-04-06 13:05:22 -04:00
Serhiy Storchaka f29bc70bff Issue #15133: _tkinter.tkapp.getboolean() now supports long and Tcl_Obj and
always returns bool.  tkinter.BooleanVar now validates input values (accepted
bool, int, long, str, unicode, and Tcl_Obj).  tkinter.BooleanVar.get() now
always returns bool.
2015-04-04 12:42:25 +03:00
Serhiy Storchaka 37943b07fe Issue #23338: Fixed formatting ctypes error messages on Cygwin.
Patch by Makoto Kato.
2015-04-04 10:05:35 +03:00
Serhiy Storchaka c77c5b5f03 Issue #16840: Tkinter now supports 64-bit integers added in Tcl 8.4 and
arbitrary precision integers added in Tcl 8.5.
2015-04-02 18:46:30 +03:00
Victor Stinner 31c7e4fb1a Issue #23834: Fix socket.sendto(), use the C long type to store the result of
sendto() instead of the C int type.
2015-04-02 17:19:17 +02:00
Serhiy Storchaka cba6b5d045 Issue #21526: Tkinter now supports new boolean type in Tcl 8.5. 2015-04-02 10:35:57 +03:00
Benjamin Peterson a5a44aba3f remove assignment in conditional 2015-04-01 11:16:40 -04:00
Serhiy Storchaka 96d8012964 Issue #23785: Fixed memory leak in TextIOWrapper.tell() in rare circumstances. 2015-03-30 10:00:49 +03:00
Serhiy Storchaka aa64c46ac9 Issue #23781: Add private helper function _PyErr_ReplaceException() that
corresponds _PyErr_ChainExceptions() in Python 3 to help porting patches
from Python 3.
2015-03-30 09:48:42 +03:00
Serhiy Storchaka f95a57f9a1 Issue #21802: The reader in BufferedRWPair now is closed even when closing
writer failed in BufferedRWPair.close().
2015-03-24 23:23:42 +02:00
Benjamin Peterson 72ef961059 expose X509_V_FLAG_TRUSTED_FIRST 2015-03-04 22:49:41 -05:00
Benjamin Peterson b1ebba5bd5 enable X509_V_FLAG_TRUSTED_FIRST when possible (closes #23476) 2015-03-04 22:11:12 -05:00
Antoine Pitrou 34c8d98306 Issue #23576: Avoid stalling in SSL reads when EOF has been reached in the SSL layer but the underlying connection hasn't been closed. 2015-03-04 20:51:55 +01:00
Benjamin Peterson b027c6cae0 fix possible overflow bugs in unicodedata (closes #23367) 2015-03-02 11:17:05 -05:00
Serhiy Storchaka b8285d96f4 Issue #22113: struct.pack_into() now supports new buffer protocol (in
particular accepts writable memoryview).
2015-02-21 19:51:17 +02:00
Serhiy Storchaka 021d55ff74 Issue #23215: Multibyte codecs with custom error handlers that ignores errors
consumed too much memory and raised SystemError or MemoryError.
Original patch by Aleksi Torhamo.
2015-02-21 01:19:17 +02:00
Serhiy Storchaka 3173f7c904 Issue #5700: io.FileIO() called flush() after closing the file.
flush() was not called in close() if closefd=False.
2015-02-21 00:34:20 +02:00
Serhiy Storchaka a2269d074b Issue #23446: Use PyMem_New instead of PyMem_Malloc to avoid possible integer
overflows.  Added few missed PyErr_NoMemory().
2015-02-16 13:16:07 +02:00
Serhiy Storchaka 4068b01cb5 Issue #23392: Added tests for marshal C API that works with FILE*. 2015-02-06 08:56:33 +02:00
Serhiy Storchaka 42aa9c078a Issues #23363, #23364, #23365, #23366: Fixed itertools overflow tests.
Used PyMem_New to check overflow.
2015-02-03 01:34:09 +02:00
Benjamin Peterson dda9121ad1 check for overflows in permutations() and product() (closes #23363, closes #23364) 2015-02-01 21:34:07 -05:00
Benjamin Peterson 17845c1786 check for overflow in combinations_with_replacement (closes #23365) 2015-02-01 21:10:47 -05:00
Benjamin Peterson 021dec1c96 detect overflow in combinations (closes #23366) 2015-02-01 20:59:00 -05:00
Stefan Krah 0a7fc53be2 Issue #23370: Fix off-by-one error for non-contiguous buffers. 2015-02-01 16:10:35 +01:00
Stefan Krah 5606cd9800 Issue #23349: Fix off-by-one error in PyBuffer_ToContiguous(). Initial patch
by Richard Hansen.
2015-01-30 20:11:10 +01:00
Benjamin Peterson a99e48c2b2 ifdef our way to compatibility with old openssl (closes #23335) 2015-01-28 12:06:39 -05:00
Benjamin Peterson f4bb2311b1 disable ALPN on LibreSSL, which has a large version number, but not ALPN support (closes #23329) 2015-01-27 11:10:18 -05:00
Benjamin Peterson aa7075845c prefer server alpn ordering over the client's 2015-01-23 17:30:26 -05:00
Benjamin Peterson b10bfbe036 pep 466 backport of alpn (#20188) 2015-01-23 16:35:37 -05:00
Antoine Pitrou c3edc19afc Issue #23248: Update ssl error codes from latest OpenSSL git master. 2015-01-18 17:39:32 +01:00
Serhiy Storchaka e8c9e14af9 Issue #23181: More "codepoint" -> "code point". 2015-01-18 11:42:50 +02:00
Serhiy Storchaka 2098d61aab Issue #23098: 64-bit dev_t is now supported in the os module. 2015-01-18 11:11:25 +02:00
Benjamin Peterson 07f90476b9 fix instances of consecutive articles (closes #23221)
Patch by Karan Goel.
2015-01-13 09:17:24 -05:00
Mark Dickinson a024f80a71 Issue #21902: Replace incorrect 'hyperbolic arc sine' (etc.) with 'inverse hyperbolic sine' (etc.). Remove meaningless reference to radians. 2015-01-11 13:03:06 +00:00
Victor Stinner 7c90667f74 Issue #21356: Make ssl.RAND_egd() optional to support LibreSSL. The
availability of the function is checked during the compilation. Patch written
by Bernard Spil.
2015-01-06 13:53:37 +01:00
Benjamin Peterson 53ae6145a0 allow more operations to work on detached streams (closes #23093)
Patch by Martin Panter.
2014-12-21 20:51:50 -06:00
Benjamin Peterson daa491b6d7 merge 2.7.9 release branch 2014-12-05 22:02:33 -05:00
Benjamin Peterson 60766c47e7 allow ssl module to compile if openssl doesn't support SSL 3 (closes #22935)
Patch by Kurt Roeckx.
2014-12-05 21:59:35 -05:00
Serhiy Storchaka 0f8f784a77 Removed duplicated words in in comments and docs. 2014-12-01 18:16:30 +02:00
Benjamin Peterson 31aa69ead5 allow hostname to be passed to SSLContext even if OpenSSL doesn't support SNI (closes #22921)
Patch from Donald Stufft.
2014-11-23 20:13:31 -06:00
Serhiy Storchaka 069bdcbb25 Issue #22821: Fixed fcntl() with integer argument on 64-bit big-endian
platforms.
2014-11-10 10:42:06 +02:00
Benjamin Peterson 9dcab59b08 fix test where sizeof(long) != sizeof(int) 2014-11-06 00:52:58 -05:00
Steve Dower 31221a7285 Issue #20160: broken ctypes calling convention on MSVC / 64-bit Windows (large structs). Patch by mattip 2014-11-05 19:16:05 -08:00
Antoine Pitrou 06c14976dc Issue #22773: fix failing test with old readline versions due to issue #19884. 2014-11-04 14:52:10 +01:00
Benjamin Peterson 93c41335ab allow keyfile argument to be None (closes #22787) 2014-11-03 21:12:05 -05:00
R David Murray 55bf20ad6e #13096: Fix segfault in CTypes POINTER handling of large values.
Patch by Meador Inge.
2014-10-12 14:26:30 -04:00
Benjamin Peterson 3d1f2d3b52 make _socket.socket weakrefable (closes #22569)
Patch from Alex Gaynor.
2014-10-06 14:38:20 -04:00
Georg Brandl fe3c80ba16 Closes #19342: improve docstrings in grp module. 2014-10-02 08:34:41 +02:00
Benjamin Peterson 2f33456e41 fix sslwrap_simple (closes #22523)
Thanks Alex Gaynor.
2014-10-01 23:53:01 -04:00
Benjamin Peterson bc4ece5775 allow longs as indexes to group() (closes #22530) 2014-09-30 22:04:28 -04:00
Benjamin Peterson 1c873bf77d clear BufferedRWPair weakrefs on deallocation (closes #22517) 2014-09-29 22:46:57 -04:00
Berker Peksag b5dc3dcb92 Issue #21860: Correct docstrings of FileIO.seek() and FileIO.truncate() methods.
Patch by Terry Chia.
2014-09-24 12:54:25 +03:00
Serhiy Storchaka 0aa6562913 Issue #21147: sqlite3 now raises an exception if the request contains a null
character instead of truncate it.  Based on patch by Victor Stinner.
2014-09-11 13:27:19 +03:00
Serhiy Storchaka 17c01785ee Issue #21951: Fixed a crash in Tkinter on AIX when called Tcl command with
empty string or tuple argument.

On some platforms Tcl memory allocator returns NULL when allocating zero-sized
block of memory.
2014-09-11 10:56:59 +03:00
Serhiy Storchaka 1c09c0ea11 Issue #21951: Use attemptckalloc() instead of ckalloc() in Tkinter.
ckalloc() causes the Tcl interpreter to panic, attemptckalloc() returns NULL
if the memory allocation fails.
2014-09-11 10:38:08 +03:00
doko@ubuntu.com 77a64bfdf7 - Issue #22381: Update zlib to 1.2.8. 2014-09-11 08:32:46 +02:00
Alex Gaynor e98205d798 Issue #20421: Add a .version() method to SSL sockets exposing the actual protocol version in use.
Backport from default.
2014-09-04 13:33:22 -07:00
Benjamin Peterson 0062d1e7f4 PEP 466: backport hashlib algorithm constants (closes #21307) 2014-08-28 09:41:29 -04:00
Benjamin Peterson 876473eba3 fix load_verify_locations on unicode paths (closes #22244) 2014-08-28 09:33:21 -04:00
Benjamin Peterson e373754056 don't segfault when trying to fdopen() a fd for a dir (closes #22259)
Patch from Brian Kearns.
2014-08-24 10:37:12 -05:00
Benjamin Peterson 7ed3e29723 fix error message for invalid curve name 2014-08-20 21:37:01 -05:00
Benjamin Peterson b47b54c7f8 Backed out changeset 7c19f1f792c6 2014-08-20 17:30:40 -05:00
Benjamin Peterson 64c1215b5d don't call rl_initialize when stdout is not a tty 2014-08-20 16:03:43 -05:00
Benjamin Peterson cbb144afc0 PyUnicode -> PyString and PyLong -> PyInt 2014-08-20 14:25:32 -05:00
Benjamin Peterson daeb925cc8 backport many ssl features from Python 3 (closes #21308)
A contribution of Alex Gaynor and David Reid with the generous support of
Rackspace. May God have mercy on their souls.
2014-08-20 14:14:50 -05:00
Serhiy Storchaka cbee972e35 Issue #15696: Add a __sizeof__ implementation for mmap objects on Windows. 2014-08-19 17:03:42 +03:00
Serhiy Storchaka f880bff41a Removed useless Py_LIMITED_API checks.
Support for Py_LIMITED_API was introduced in Python 3.2.
Thanks Arfrever Frehtes Taifersar Arahesis.
2014-08-17 13:29:13 +03:00
doko@ubuntu.com baa84b827b - Issue #22176: Update the ctypes module's libffi to v3.1. This release
adds support for the Linux AArch64 and POWERPC ELF ABIv2 little endian
  architectures.
2014-08-10 11:15:28 +02:00
Serhiy Storchaka 501da1da03 Issue #21975: Fixed crash when using uninitialized sqlite3.Row (in particular
when unpickling pickled sqlite3.Row).  sqlite3.Row is now initialized in the
__new__() method.
2014-08-06 17:50:22 +03:00
Serhiy Storchaka 04fa704161 Issue #21580: Now Tkinter correctly handles binary "data" and "maskdata"
configure options of tkinter.PhotoImage.

Added private Tkapp method _createbytearray().
2014-07-31 07:48:14 +03:00
Victor Stinner 0a649c7bb1 Fix repr(_socket.socket) on Windows 64-bit: don't fail with OverflowError
on closed socket.
2014-07-26 14:52:55 +02:00
Victor Stinner 465db3c69a socketmodule.c: backport INVALID_SOCKET from Python 3.5 to simplify the code 2014-07-26 14:47:56 +02:00
Victor Stinner 1d9457d2d2 Issue #19884, readline: calling rl_variable_bind ("enable-meta-key", "off")
does crash on Mac OS X which uses libedit instead of readline.
2014-07-24 22:11:21 +02:00
Victor Stinner 63a474788a Issue #19884: readline: Disable the meta modifier key if stdout is not a
terminal to not write the ANSI sequence "\033[1034h" into stdout. This sequence
is used on some terminal (ex: TERM=xterm-256color") to enable support of 8 bit
characters.
2014-07-24 12:22:24 +02:00
Serhiy Storchaka 5d93f408d8 Call PyErr_NoMemory() when PyMem_Malloc() fails. 2014-07-14 12:20:01 +03:00
Benjamin Peterson a83050196d properly decref the return value of close() 2014-07-04 17:00:25 -07:00
Victor Stinner f6b3c84a4a Issue #21090: io.FileIO.readall() does not ignore I/O errors anymore. Before,
it ignored I/O errors if at least the first C call read() succeed.
2014-07-02 23:12:48 +02:00
Raymond Hettinger 58ad24512a Issue #19145: Fix handling of negative values for a "times" keyword argument to itertools.repeat()>
(Patch contributed by Vajrasky Kok.)
2014-06-24 21:53:45 -07:00
Serhiy Storchaka 05b0a1be37 Issue #21310: Fixed possible resource leak in failed open(). 2014-06-09 13:32:08 +03:00
Benjamin Peterson 48f2e99808 backport hashlib.pbkdf2_hmac per PEP 466 (closes #21304)
Backport by Alex Gaynor.
2014-05-31 13:26:22 -07:00
Serhiy Storchaka 529a639669 Fixed possible integer overflow in getint, getdouble and getboolean too (issue #21552). 2014-05-30 14:28:21 +03:00
Serhiy Storchaka 2a0220b18a Issue #21552: Fixed possible integer overflow of too long string lengths in
the Tkinter module on 64-bit platforms.
2014-05-30 14:23:52 +03:00
Serhiy Storchaka 30080fd63d Issue #10203: sqlite3.Row now truly supports sequence protocol. In particular
it supports reverse() and negative indices.  Original patch by Claudiu Popa.
2014-05-28 12:57:38 +03:00
Benjamin Peterson d3d23636cb support pep 3118 format strings for ctypes objects with nontrivial shapes (closes #10744)
Patch from Matti Picus.
2014-05-17 14:57:10 -07:00
Benjamin Peterson 8c166055f9 use logical rather than bit and 2014-05-11 16:17:02 -07:00
Benjamin Peterson a1ccfb513b cast away warnings 2014-05-11 16:14:00 -07:00
Benjamin Peterson 629026aecc backport hmac.compare_digest to partially implement PEP 466 (closes #21306)
Backport from Alex Gaynor.
2014-05-11 16:11:44 -07:00
Raymond Hettinger 93434890dc Issue 21375: Fix possible Py_ssizet overflow in heapq. 2014-05-03 15:27:14 -07:00
Antoine Pitrou 3ec903fce4 Issue #21321: itertools.islice() now releases the reference to the source iterator when the slice is exhausted.
Patch by Anton Afanasyev.
2014-04-29 12:13:46 +02:00
Kristján Valur Jónsson be580f2e48 Issue #20434 Correct error handlin of _PyString_Resize and _PyBytes_Resize 2014-04-25 09:51:21 +00:00
Andrew Kuchling 68e85e5834 #15840: make docs consistent by saying operations on closed files raise ValueError.
Patch by Caelyn McAulay.

Neither Caelyn nor I could find any cases in 2.7 or 3.4/5 where an
operation on a closed stream raised IOError; generally the C
implementation have a macro to check for the stream being closed, and
these macros all raised ValueError.  If we find any, a new bug should
be opened.
2014-04-15 16:07:52 -04:00
Benjamin Peterson 7fc8a10577 add missing NULL check 2014-04-14 19:57:52 -04:00
Benjamin Peterson 5c863bf938 when an exception is raised in fdopen, never close the fd (changing on my mind on #21191) 2014-04-14 19:45:46 -04:00
Benjamin Peterson 3e5d87bb86 disallow a negative idx parameter 2014-04-14 11:43:09 -04:00
Benjamin Peterson 6c939cb6f6 in scan_once, prevent the reading of arbitrary memory when passed a negative index
Bug reported by Guido Vranken.
2014-04-13 22:10:38 -04:00
Benjamin Peterson 02ab7a84ef make sure fdopen always closes the fd in error cases (closes #21191) 2014-04-09 15:40:18 -04:00
Benjamin Peterson d42f60ed81 fix overflow detection of strop.expandtabs 2014-03-30 20:09:44 -04:00
Ned Deily b693e9fc5b Issue #6676: Ensure a meaningful exception is raised when attempting
to parse more than one XML document per pyexpat xmlparser instance.
(Original patches by Hirokazu Yamamoto and Amaury Forgeot d'Arc, with
suggested wording by David Gutteridge)
2014-03-27 16:38:32 -07:00
Benjamin Peterson e3af6f0a88 fix ctypes test alignment assumptions (closes #20946)
Patch by Andreas Schwab.
2014-03-16 10:07:26 +01:00
Georg Brandl 6d07641fce #13530: port to 2.7 branch (document what os.lseek returns). 2014-03-11 10:28:56 +01:00
Serhiy Storchaka e50fe4c9eb Issue #20283: RE pattern methods now accept the string keyword parameters
as documented.  The pattern and source keyword parameters are left as
deprecated aliases.
2014-03-06 12:24:29 +02:00
Benjamin Peterson 384e9cb3a1 finish backing out #19081 2014-02-16 14:46:57 -05:00
Benjamin Peterson e9aab0fb98 backout #19081 to fix #20621 2014-02-16 14:20:14 -05:00
Serhiy Storchaka 1d19f97eed Issue #17671: Fixed a crash when use non-initialized io.BufferedRWPair.
Based on patch by Stephen Tu.
2014-02-12 10:52:07 +02:00
Benjamin Peterson 2748c5c106 avoid name clash with posix_close (closes #20594) 2014-02-11 10:16:16 -05:00
Serhiy Storchaka 98a9722e4a Issue #20437: Fixed 43 potential bugs when deleting objects references. 2014-02-09 13:14:04 +02:00
Ned Deily ddc697f212 Issue #20374: delete spurious empty line 2014-02-05 17:01:41 -08:00
Ned Deily b0fd12d96c Issue #20374: Avoid compiler warnings when compiling readline with libedit. 2014-02-05 16:52:26 -08:00
Serhiy Storchaka ccffb25c54 Issue #20368: The null character now correctly passed from Tcl to Python (in
unicode strings only).  Improved error handling in variables-related commands.
2014-02-03 21:23:46 +02:00
Gregory P. Smith aaef0e7821 Remove inaccurate comment and a the related recently added
Py_VerboseFlag print that can never be triggered.

prefix[0] is always equal to 0 at this point in the code.
2014-01-27 22:43:25 -08:00
Gregory P. Smith 027ab39014 Issue #19081: Remove the zipimporter.files reference as the zip TOC
caches are module global in the zip_directory_cache. When it is
updated due to a changed zip file, all zipimporter instances need to
see the same updates TOC cache.  This fixes the bug for the overlooked
submodule import case from the earlier round of changes.  Includes
tests that would fail otherwise.

It also refactors zipimporter_init in the process to make it a bit
easier to read and understand.  Less reuse of the same variable for
multiple purposes and the local path buffer is malloc'ed instead
of consuming a large MAXPATHLEN+2 chunk stack space.
2014-01-27 00:15:10 -08:00
Benjamin Peterson 0ac0eadf8d new plan: just remove typecasts (closes #20374) 2014-01-24 11:44:16 -05:00
Benjamin Peterson ce75105e10 use new readline function types (closes #20374) 2014-01-24 00:32:12 -05:00
Serhiy Storchaka e0ed2d75c8 Issue #19936: Added executable bits or shebang lines to Python scripts which
requires them.  Disable executable bits and shebang lines in test and
benchmark files in order to prevent using a random system python, and in
source files of modules which don't provide command line interface.
2014-01-16 18:59:17 +02:00
Benjamin Peterson 9e79889184 remove overly strict assertion (closes #20251) 2014-01-14 00:21:49 -05:00
Benjamin Peterson 06e486c2d3 correct defaultdict signature in docstring (closes #20250)
Patch from Andrew Barnert.
2014-01-13 23:56:05 -05:00
Benjamin Peterson 28cf368c1b complain when nbytes > buflen to fix possible buffer overflow (closes #20246) 2014-01-13 22:59:38 -05:00
Antoine Pitrou 3b2afbbf88 Issue #20207: Always disable SSLv2 except when PROTOCOL_SSLv2 is explicitly asked for. 2014-01-09 19:52:12 +01:00
Benjamin Peterson 7251fe10ff fix zipimport ref leak 2014-01-09 09:36:10 -06:00
Gregory P. Smith 6de7260877 cleanup for the issue 19081 fix - pull the file open and close outside of the
zip_searchorder scanning loop in get_module_code().
[already done in 3.3 and 3.4]
2014-01-07 18:39:48 -08:00
Gregory P. Smith ad3e72557c Should fix the issue19081 fix on Windows. Don't let the previous
posix module ImportError cause the nt module import to fail.
2014-01-07 01:11:09 -08:00
Gregory P. Smith b48c5d5107 Fixes issue19081: When a zipimport .zip file in sys.path being imported
from is modified during the lifetime of the Python process after
zipimport has already opened and cached the zip's table of contents
it now fstat's the file after opening it upon every attempt to access
anything within and will re-read the table of contents if the .zip file
inode, size or mtime have changed.

It would've been nicer to hold any .zip file used by zipimport open for the
duration of the process but that would be more invasive and add an additional
open file descriptor to all zipimport using processes.  It also would likely
not fix the problem on Windows due to different filesystem semantics.
2014-01-06 09:46:46 -08:00
Victor Stinner 9450219b06 Issue #20026: Fix the sqlite module to handle correctly invalid isolation level
(wrong type).
2013-12-19 16:44:48 +01:00
Serhiy Storchaka 0c221beed4 Issue #18829: csv.Dialect() now checks type for delimiter, escapechar and
quotechar fields.  Original patch by Vajrasky Kok.
2013-12-19 16:26:56 +02:00
Gregory P. Smith ddd71e2f78 remove trailing spaces. 2013-12-18 11:25:26 -08:00
Serhiy Storchaka 15df36bb14 Issue #16404: Add checks for return value of PyInt_FromLong() in
sys.getwindowsversion() and ossaudiodev.setparameters().
Reported by Ned Batchelder.
2013-12-17 15:09:45 +02:00
Serhiy Storchaka a92cc91ee6 Issue #17919: Fixed integer overflow in the eventmask parameter. 2013-12-14 19:11:04 +02:00
Serhiy Storchaka 17f22c9281 Issue #17919: select.poll.poll() again works with poll.POLLNVAL on AIX. 2013-12-13 12:09:05 +02:00
Victor Stinner 66c6e9dcb4 Issue #14432: Generator now clears the borrowed reference to the thread state
Fix a crash when a generator is created in a C thread that is destroyed while
the generator is still used. The issue was that a generator contains a frame,
and the frame kept a reference to the Python state of the destroyed C thread.
The crash occurs when a trace function is setup.
2013-12-13 02:37:09 +01:00
Serhiy Storchaka 5493d5ea2a Issue #19099: The struct module now supports Unicode format strings. 2013-12-08 17:44:50 +02:00
Nadeem Vawda 337c50b8cb Closes #19878: Fix segfault in bz2 module.
Initial patch by Vajrasky Kok.
2013-12-08 15:31:50 +01:00
Alexandre Vassalotti df9460f8dc Issue #6477: Revert fbb97f6eb3b3 as it broke test_xpickle. 2013-11-30 17:43:42 -08:00
Alexandre Vassalotti a2934280e5 Issue #6477: Added pickling support for singletons and their types. 2013-11-30 16:52:03 -08:00
Eli Bendersky 71142c4e86 Fix indentation from previous commit 2013-11-28 06:37:25 -08:00
Eli Bendersky f933e081dd Issue #19815: Fix segfault when parsing empty namespace declaration.
Based on patches by Christian Heimes and Vajrasky Kok
2013-11-28 06:25:45 -08:00
Serhiy Storchaka dafda9b042 Issue #11489: JSON decoder now accepts lone surrogates. 2013-11-26 21:25:15 +02:00
R David Murray a691219716 backport #18985: Improve fcntl documentation. 2013-11-07 10:52:53 -05:00
Christian Heimes 41a7d5ee17 Issue #19227 / Issue #18747: Remove pthread_atfork() handler to remove OpenSSL re-seeding
It is causing trouble like e.g. hanging processes.
2013-10-29 20:50:01 +01:00
Serhiy Storchaka fdb73ed486 Issue #19405: Fixed outdated comments in the _sre module. 2013-10-27 08:00:57 +02:00
Benjamin Peterson 657d06b13e just return toplevel symbol table rather than all blocks (closes #19393) 2013-10-26 13:13:51 -04:00
Mark Dickinson 36f6e2c9e0 Issue #18739: Fix inconsistent results from math.log(n) and math.log(long(n)) 2013-10-13 10:55:15 +01:00
Ned Deily 62a192931b Issue #18458: Prevent crashes with newer versions of libedit. Its readline
emulation has changed from 0-based indexing to 1-based like gnu readline.
Original patch by Ronald Oussoren.
2013-10-12 15:45:25 -07:00
Ned Deily ebca3a5ab9 Issue #19147: Fix docstring for fcntl.flock to refer to correct man section. 2013-10-02 12:20:18 -07:00
Antoine Pitrou 87c99a0d37 Properly initialize all fields of a SSL object after allocation. 2013-09-29 19:52:45 +02:00
Serhiy Storchaka cf29ba8cf0 Issue #18672: Fixed format specifiers for Py_ssize_t in debugging output in
the _sre moduel.
2013-09-05 18:02:57 +03:00
Christian Heimes 5eb6e3b40d Issue #18709: GCC 4.6 complains that 'v' may be used uninitialized in GEN_EMAIL/GEN_URI/GEN_DNS case 2013-09-05 16:05:50 +02:00
Christian Heimes ed9884b2d0 Issue #18709: GCC 4.6 complains that 'v' may be used uninitialized in GEN_EMAIL/GEN_URI/GEN_DNS case 2013-09-05 16:04:35 +02:00
Victor Stinner 930c3c9e43 Issue #18909: Fix _tkinter.tkapp.interpaddr() on Windows 64-bit, don't cast
64-bit pointer to long (32 bits).
2013-09-05 00:26:15 +02:00
Antoine Pitrou 213fec4bff Issue #18876: The FileIO.mode attribute now better reflects the actual mode under which the file was opened.
Patch by Erik Bray.
2013-09-04 20:46:33 +02:00
Eli Bendersky e6802db7d1 Close #18912: Fix indentation in docstring
Contributed by Jeroen Van Goey
2013-09-03 06:41:58 -07:00
Ezio Melotti 6d0f0f299b #18803: fix more typos. Patch by Févry Thibault. 2013-08-26 01:31:30 +03:00
Christian Heimes 42831fefa7 Issue #11973: Fix a problem in kevent. The flags and fflags fields are now
properly handled as unsigned.
2013-08-25 14:57:00 +02:00
Christian Heimes 8ee5ffddf5 Issue #18747: Fix spelling errors in my commit message and comments,
thanks to Vajrasky Kok for proof-reading.
2013-08-25 14:19:16 +02:00
Barry Warsaw 82f8828317 - Issue #18709: Fix CVE-2013-4238. The SSL module now handles NULL bytes
inside subjectAltName correctly. Formerly the module has used OpenSSL's
  GENERAL_NAME_print() function to get the string represention of ASN.1
  strings for `rfc822Name` (email), `dNSName` (DNS) and
  `uniformResourceIdentifier` (URI).
2013-08-23 13:26:49 -04:00
Serhiy Storchaka 2ac1c1a31d Issue #16809: Tkinter's splitlist() and split() methods now accept Tcl_Obj
argument.

This is needed for support Tcl/Tk 8.6.
2013-08-22 17:42:45 +03:00
Christian Heimes 1d0f73d20f Issue #18747: Use a parent atfork handler instead of a child atfork handler.
fork() is suppose to be async-signal safe but the handler calls unsafe functions. A parent handler mitigates the issue.
2013-08-22 13:19:48 +02:00
Serhiy Storchaka 4203570d01 Issue #17119: Fixed integer overflows when processing large Unicode strings
and tuples in the tkinter module.
2013-08-21 21:46:12 +03:00
Christian Heimes 0d604cf65e Issue #18747: Re-seed OpenSSL's pseudo-random number generator after fork.
A pthread_atfork() child handler is used to seeded the PRNG with pid, time
and some stack data.
2013-08-21 13:26:05 +02:00
Serhiy Storchaka c360389453 Issue #8865: Concurrent invocation of select.poll.poll() now raises a
RuntimeError exception.  Patch by Christian Schubert.
2013-08-20 20:38:21 +03:00
Serhiy Storchaka a9885e93ee Issue #13461: Fix a crash in the TextIOWrapper.tell method and in the "replace"
error handler on 64-bit platforms.  Patch by Yogesh Chaudhari.
2013-08-20 20:08:53 +03:00
Christian Heimes 10107813ac Issue #18777: The ssl module now uses the new CRYPTO_THREADID API of
OpenSSL 1.0.0+ instead of the deprecated CRYPTO id callback function.
2013-08-19 17:36:29 +02:00
Christian Heimes b4ec842f39 Issue 18768: Correct doc string of RAND_edg(). Patch by Vajrasky Kok. 2013-08-17 17:25:18 +02:00
Christian Heimes f1bd47ae14 Issue #18768: coding style nitpick. Thanks to Vajrasky Kok 2013-08-17 17:18:56 +02:00
Ezio Melotti 419e23cbb0 #18466: fix more typos. Patch by Févry Thibault. 2013-08-17 16:56:09 +03:00
Christian Heimes 6e0be01bfb Issue #18178: Fix ctypes on BSD. dlmalloc.c was compiled twice which broke malloc weak symbols. 2013-08-17 15:01:54 +02:00
Christian Heimes 88b174c977 Issue #18709: Fix CVE-2013-4238. The SSL module now handles NULL bytes
inside subjectAltName correctly. Formerly the module has used OpenSSL's
GENERAL_NAME_print() function to get the string represention of ASN.1
strings for rfc822Name (email), dNSName (DNS) and
uniformResourceIdentifier (URI).
2013-08-17 00:54:47 +02:00
Serhiy Storchaka e822b034e7 Issue #15866: The xmlcharrefreplace error handler no more produces two XML
entities for a non-BMP character on narrow build.
2013-08-06 16:56:26 +03:00
Mark Dickinson 5ad3514822 Issue #18661: typo in grp.struct_group docstring. 2013-08-05 17:56:17 +01:00
Eli Bendersky b671701149 Issue #13612: Fix a buffer overflow in case of a multi-byte encoding.
This is a belated backport of f7b47fb30169; Patch by Serhiy Storchaka.
2013-08-04 06:09:49 -07:00
Serhiy Storchaka 3ade66c203 Issue #17998: Fix an internal error in regular expression engine. 2013-08-03 19:26:33 +03:00
Ned Deily 8074364f7a Issue #17557: Fix os.getgroups() to work with the modified behavior of
getgroups(2) on OS X 10.8.  Original patch by Mateusz Lenik.
2013-08-01 21:19:09 -07:00
Raymond Hettinger 662908b5e5 Restore the data block size to 62.
The former block size traded away good fit within cache lines in
order to gain faster division in deque_item().  However, compilers
are getting smarter and can now replace the slow division operation
with a fast integer multiply and right shift.  Accordingly, it makes
sense to go back to a size that lets blocks neatly fill entire
cache-lines.

GCC-4.8 and CLANG 4.0 both compute "x // 62" with something
roughly equivalent to "x * 9520900167075897609 >> 69".
2013-07-28 02:34:42 -07:00
Raymond Hettinger 69468146b4 Issue #18513: Add workaround for OS X 10.8 cexp bug that leads to wrong cmath.rect(0.0,-0.0) results. 2013-07-20 10:56:58 -07:00
Raymond Hettinger b77ed2c54b Backport c952f3d122ae: Tweak the deque struct by moving the least used fields
(maxlen and weakref) to the end.
2013-07-16 02:34:19 -07:00
Raymond Hettinger 90180c1c3f Move the leftlink to the end of the block structure.
The current pattern of memory access will update both the leftlink and
rightlink at the same time, so they should be positioned side-by-side
for better cache locality.

Keeping the leftlink at the front of the structure would make sense
only if the paired updates were eliminated by backporting changesets
49a9c734304d, 3555cc0ca35b, ae9ee46bd471, and 744dd749e25b.  However,
that isn't likely to happen, so we're better off with the leftlink at
the end of the structure.
2013-07-16 01:59:30 -07:00
Serhiy Storchaka fab65428d5 Issue #18101: Tcl.split() now process Unicode strings nested in a tuple as it
do with byte strings.

Added tests for Tcl.split() and tcl.splitline().
2013-07-11 20:32:48 +03:00
Richard Oudkerk 41072db709 Issue #17097: Make multiprocessing ignore EINTR. 2013-07-01 18:45:28 +01:00
Benjamin Peterson 73d6aca5d2 reapply f1dc30a1be72 2013-06-25 11:35:44 -07:00
Benjamin Peterson 227f0faed2 reapply 5accb0ac8bfb 2013-06-25 11:34:48 -07:00
Benjamin Peterson 3968e29959 reapply f1dc30a1be72 2013-06-25 11:26:20 -07:00
Benjamin Peterson 13dd1f947e reapply f1dc30a1be72 2013-06-25 11:25:26 -07:00
Victor Stinner c1a44269da Issue #18135: ssl.SSLSocket.write() now raises an OverflowError if the input
string in longer than 2 gigabytes. The ssl module does not support partial
write.
2013-06-25 00:48:02 +02:00
Benjamin Peterson 478b08ee5a also backout f1dc30a1be72 for not being a bugfix 2013-06-23 11:38:11 -07:00
Victor Stinner 4807df41ad Issue #18135: Fix a possible integer overflow in ssl.SSLSocket.write()
for strings longer than 2 gigabytes.
2013-06-23 15:15:10 +02:00
Benjamin Peterson 10c74d28e4 backout 5accb0ac8bfb; needs more discussion on python-dev 2013-06-22 11:16:36 -07:00
Andrew Kuchling aa6c297316 #18113: avoid segfault if Py_XDECREF triggers code that calls set_panel_userptr again
Problem noted & original patch by Serhiy Storchaka; I tweaked the patch a bit.
2013-06-22 12:33:05 -04:00
Raymond Hettinger 22b4b4cef4 Arrange structure to match the common access patterns. 2013-06-22 00:51:01 -07:00
Christian Heimes 3aa138fe1d Fix for r84195: add HAVE_ALLOCA_H to configure and only include alloca.h if it's available 2013-06-18 13:25:24 +02:00
Victor Stinner c7b0990a05 ctypes: AIX needs an explicit #include <alloca.h> to get alloca() 2013-06-17 22:03:35 +02:00
Andrew Kuchling a49dcc51b8 #18113: Objects associated to a curses.panel object with set_userptr() were leaked.
Reported by Atsuo Ishimoto.
2013-06-15 13:53:10 -04:00
Raymond Hettinger 03512c18cb Fix comment blocks. Adjust blocksize to a power-of-two for better divmod computations. 2013-06-14 01:06:33 -04:00
Ronald Oussoren 0e6283e68a Ensure that the fix for #17269 also works on OSX 10.4
AI_NUMERICSERV isn't defined on OSX 10.4.
2013-06-10 10:35:36 +02:00
Ronald Oussoren 16c52a3376 Issue #17269: Workaround for a platform bug in getaddrinfo on OSX
Without this patch socket.getaddrinfo crashed when called
with some unusual argument combinations.
2013-05-24 13:45:27 +02:00
Serhiy Storchaka cb1a0283c3 Issue #17979: Fixed the re module in build with --disable-unicode. 2013-05-21 22:53:33 +03:00
doko@ubuntu.com 9855249a9f - Fix typos in the multiprocessing module. 2013-05-15 16:54:16 +02:00
Ezio Melotti 5f4ba6b4e0 #16523: improve attrgetter/itemgetter/methodcaller documentation. 2013-05-08 10:53:11 +03:00
Antoine Pitrou 1e18102a72 Issue #17928: Fix test_structmembers on 64-bit big-endian machines.
(_testcapi isn't Py_ssize_t-clean, the "s#" code should use an int for length)
2013-05-08 02:07:13 +02:00
Antoine Pitrou 38f1afe8d1 Issue #17926: Fix dbm.__contains__ on 64-bit big-endian machines. 2013-05-08 01:51:37 +02:00
Antoine Pitrou 31bc8bef63 Issue #17289: The readline module now plays nicer with external modules or applications changing the rl_completer_word_break_characters global variable.
Initial patch by Bradley Froehle.
2013-05-06 21:51:03 +02:00
Charles-Francois Natali 880359c2bd Issue #12181: select module: Fix struct kevent definition on OpenBSD 64-bit
platforms. Patch by Federico Schwindt.
2013-05-06 21:21:57 +02:00
Antoine Pitrou d8931c375a Issue #14173: Avoid crashing when reading a signal handler during interpreter shutdown. 2013-05-04 23:16:59 +02:00
Gregory P. Smith 06544eacdf This local change was lost during the fixing of issue17192 to update
libffi to 3.0.13.  (i'm not sure if it is needed anymore but see
issue 10309 for details which makes no mention of upstream)
2013-04-30 00:08:51 -07:00
Serhiy Storchaka 8493a04e0f Issue #17857: Prevent build failures with pre-3.5.0 versions of sqlite3,
such as was shipped with Centos 5 and Mac OS X 10.4.

This bug was already fixed in issue14572 for 2.7 only and then it was
backported back from 3.3 in issue17073.
2013-04-28 14:09:47 +03:00
Antoine Pitrou be92971b38 Issue #17710: Fix cPickle raising a SystemError on bogus input. 2013-04-15 21:35:25 +02:00
Serhiy Storchaka 616f2fe28c Issue #17016: Get rid of possible pointer wraparounds and integer overflows
in the re module.  Patch by Nickolai Zeldovich.
2013-04-13 21:15:10 +03:00
doko@ubuntu.com 5ef41abc7c - Issue #17682: Add the _io module to Modules/Setup.dist (commented out). 2013-04-09 17:34:39 +02:00
doko@ubuntu.com 6cb4343d0d - Issue #13150, #17512: sysconfig no longer parses the Makefile and config.h
files when imported, instead doing it at build time.  This makes importing
  sysconfig faster and reduces Python startup time by 20%.
2013-04-08 21:20:09 +02:00
Kristjan Valur Jonsson 7e360b3963 Issue #17662: fix socketmodule compilation with Setup.dist.
Patch contributed by Bohuslav "Slavek" Kabrda (bkabrda)
2013-04-08 16:03:30 +00:00
Serhiy Storchaka 6c467a41bc Revert a premature patch for issue #14010 (changeset d17d10c84d27). 2013-04-06 22:51:29 +03:00
Serhiy Storchaka bb84565cdb Issue #14010: Fix a crash when iterating or deleting deeply nested filters
in itertools module (i.e. itertools.izip(), itertools.chain(), etc).
2013-04-06 22:04:10 +03:00
Benjamin Peterson d6138c426e always allow -1 as a uid 2013-03-23 16:19:04 -05:00
Benjamin Peterson 4d7fc3c5ac undo PyInt -> PyLong change; that was wrong 2013-03-23 15:35:24 -05:00
Benjamin Peterson 31289230e2 return int instead long when possible (#17531) 2013-03-23 15:22:20 -05:00
Kristján Valur Jónsson 9795ca44fb Issue #10212: Support new buffer interface for struct.unpack and
cStringIO
2013-03-19 17:17:47 -07:00
Kristján Valur Jónsson 11f989320e Issue #10296 : Don't handle BreakPoint exceptions using
Structured Exception Handling on windows.
2013-03-19 15:24:10 -07:00
doko@ubuntu.com 4950a3b6cc - Issue #17477: Update the bsddb module to pybsddb 5.3.0, supporting
db-5.x, and dropping support for db-4.1 and db-4.2.
2013-03-19 14:46:29 -07:00
Kristján Valur Jónsson 868f0aac37 issue #9090 : Take the same approach for socketmodule as daytimemodule
when it needs support from timemodule (which is a .so on linux):
link in timemodule.c for the required functions.
2013-03-19 13:53:56 -07:00
R David Murray a39c47aab0 #8862: Fix curses cleanup with getchar is interrupted by a signal.
I have no idea how one would write a test for this.

Patch by July Tikhonov.
2013-03-19 16:26:53 -04:00