Commit graph

9056 commits

Author SHA1 Message Date
Victor Stinner
2fe9bac4dc Close #16742: Fix misuse of memory allocations in PyOS_Readline()
The GIL must be held to call PyMem_Malloc(), whereas PyOS_Readline() releases
the GIL to read input.

The result of the C callback PyOS_ReadlineFunctionPointer must now be a string
allocated by PyMem_RawMalloc() or PyMem_RawRealloc() (or NULL if an error
occurred), instead of a string allocated by PyMem_Malloc() or PyMem_Realloc().

Fixing this issue was required to setup a hook on PyMem_Malloc(), for example
using the tracemalloc module.

PyOS_Readline() copies the result of PyOS_ReadlineFunctionPointer() into a new
buffer allocated by PyMem_Malloc(). So the public API of PyOS_Readline() does
not change.
2013-10-10 16:18:20 +02:00
Raymond Hettinger
07573d7b24 merge 2013-10-04 16:52:39 -07:00
Ned Deily
f55697ca6d Issue #19147: merge from 3.3 2013-10-02 12:22:05 -07:00
Raymond Hettinger
75f65e368e merge 2013-10-01 21:38:37 -07:00
Raymond Hettinger
c13516b0a0 merge 2013-10-01 01:00:59 -07:00
Antoine Pitrou
b2201e1aa6 Properly initialize all fields of a SSL object after allocation. 2013-09-29 19:53:45 +02:00
Antoine Pitrou
20b85557f2 Issue #19095: SSLSocket.getpeercert() now raises ValueError when the SSL handshake hasn't been done. 2013-09-29 19:50:53 +02:00
Serhiy Storchaka
463bd4b5c6 Issue #19034: repr() for tkinter.Tcl_Obj now exposes string reperesentation. 2013-09-23 22:49:02 +03:00
Serhiy Storchaka
1eb87629cd Merge heads 2013-09-20 23:28:27 +03:00
Serhiy Storchaka
dac8b8b7a6 Issue #3015: Fixed tkinter with wantobject=False. Any Tcl command call
returned empty string.
2013-09-20 23:24:20 +03:00
Antoine Pitrou
b4a46cb428 Add a comment making it explicit that itertools.tee() is already 64bit-safe (issue #19049) 2013-09-20 22:19:22 +02:00
doko@ubuntu.com
9937155a1c - followup for issue #18997, make _clear_joined_ptr static. 2013-09-18 12:13:18 +02:00
Charles-François Natali
0cc86850b6 Issue #16201: socket: Use inet_pton()/inet_addr() instead of ad-hoc parsing for
numeric IP addresses.
2013-09-13 19:53:08 +02:00
Eli Bendersky
12f18289c0 Merge for Issue #18997: Issue #18997: fix ElementTree crash with using pickle and __getstate__. 2013-09-13 06:27:52 -07:00
Raymond Hettinger
8df58f7ae8 Issue 18752: Make chain.from_iterable() more visible in the documentation. 2013-09-09 01:29:40 -05:00
Victor Stinner
8898350076 Close #18957: The PYTHONFAULTHANDLER environment variable now only enables the
faulthandler module if the variable is non-empty. Same behaviour than other
variables like PYTHONDONTWRITEBYTECODE.
2013-09-08 11:36:23 +02:00
Antoine Pitrou
7b4769937f Issue #18808: Thread.join() now waits for the underlying thread state to be destroyed before returning.
This prevents unpredictable aborts in Py_EndInterpreter() when some non-daemon threads are still running.
2013-09-07 23:38:37 +02:00
Richard Oudkerk
b988ee0632 Fix conversion from Py_ssize_t to int. 2013-09-07 17:40:45 +01:00
Ned Deily
f70f4a63b6 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-09-06 15:16:19 -07:00
Serhiy Storchaka
a83a022f9a Issue #18672: Fixed format specifiers for Py_ssize_t in debugging output in
the _sre moduel.
2013-09-05 18:02:31 +03:00
Christian Heimes
2d7aba3db1 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:50 +02:00
Victor Stinner
555e57de19 (Merge 3.3) Issue #18909: Fix _tkinter.tkapp.interpaddr() on Windows 64-bit,
don't cast 64-bit pointer to long (32 bits).
2013-09-05 00:23:08 +02:00
Antoine Pitrou
e619427f7e 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:52:14 +02:00
Tim Peters
c6171e49ab Merge 3.3 into default.
cwr_next():  move invariants out of loops.

This simplifies and clarifies the code, and gives a small speedup.
2013-09-03 11:52:59 -05:00
Eli Bendersky
207fe01187 Issue #18912: Fix indentation in docstring
Contributed by Jeroen Van Goey
2013-09-03 06:38:55 -07:00
Charles-François Natali
24aa041731 Use INADDR_BROADCAST instead of hard-coded value (it's part of POSIX and
already appears without #ifdef a couple lines above).
2013-08-31 14:48:25 +02:00
Victor Stinner
d72fe89b80 select.epoll.fromfd(fd) must be not change the inheritable flag of the file
descriptor
2013-08-28 12:22:39 +02:00
Victor Stinner
1fa174a418 Get rid of signed/unsigned comparaison in _sre.c
Fix compilation warnings on Windows (Visual C++) like: "_sre.c(3121): warning
C4018: '>' : signed/unsigned mismatch".

_validate_outer() ensures that groups >= 0, so _validate_inner() can cast
groups to size_t.
2013-08-28 02:06:21 +02:00
Victor Stinner
36a5a062dc _datetimemodule.c: fix the compilation warning "conversion from 'double' to
'long', possible loss of data" in delta_new(), use an explicit cast from double
to long
2013-08-28 01:53:39 +02:00
Victor Stinner
b9981ba680 fix a compilation warning in posix_openpty() on "PPC64 AIX 3.x" buildbot 2013-08-28 01:51:06 +02:00
Victor Stinner
340f712b84 (Merge 3.3) Fix compilation of the _sqlite module if threads are disabled 2013-08-28 01:45:39 +02:00
Victor Stinner
daf455554b Issue #18571: Implementation of the PEP 446: file descriptors and file handles
are now created non-inheritable; add functions os.get/set_inheritable(),
os.get/set_handle_inheritable() and socket.socket.get/set_inheritable().
2013-08-28 00:53:59 +02:00
Serhiy Storchaka
46e1ce214b Issue #18783: Removed existing mentions of Python long type in docstrings,
error messages and comments.
2013-08-27 20:17:03 +03:00
Victor Stinner
14e461d5b9 Close #11619: The parser and the import machinery do not encode Unicode
filenames anymore on Windows.
2013-08-26 22:28:21 +02:00
Ezio Melotti
d640fe2af5 #18803: merge with 3.3. 2013-08-26 01:33:30 +03:00
Charles-François Natali
a439b32cf0 Merge. 2013-08-25 18:28:44 +02:00
Christian Heimes
9dd279a3ac Issue #11973: Fix a problem in kevent. The flags and fflags fields are now
properly handled as unsigned.
2013-08-25 14:57:38 +02:00
Christian Heimes
cfa47962c2 Issue #18747: Fix spelling errors in my commit message and comments,
thanks to Vajrasky Kok for proof-reading.
2013-08-25 14:19:29 +02:00
Richard Oudkerk
cabbde9e1e Fix compiler warning on Windows. 2013-08-24 23:46:27 +01:00
Eli Bendersky
6eb50b1f5b Use consistent style for else if / else 2013-08-24 15:17:08 -07:00
Benjamin Peterson
3a7dffa4ce remove support for compiling on systems without getcwd()
Do we need a fallback implementation of getcwd() from 1991 that claims to
support "really old Unix systems"? I don't think so.
2013-08-23 21:01:48 -05:00
Serhiy Storchaka
254954aacd 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:05 +03:00
Richard Oudkerk
a93bf7b9a6 Fix devpoll_dealloc(). 2013-08-22 14:03:44 +01:00
Richard Oudkerk
168d59b669 Move definition of devpoll_internal_close() before devpoll_close(). 2013-08-22 13:31:15 +01:00
Richard Oudkerk
069d65c35a Fix compilation of select module on Solaris. 2013-08-22 13:04:23 +01:00
Christian Heimes
f54c24628b 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:56 +02:00
Victor Stinner
13423c3726 Close #18794: Add a fileno() method and a closed attribute to select.devpoll
objects.

Add also tests on fileno() method and closed attribute of select.epoll and select.kqueue.
2013-08-22 00:19:50 +02:00
Serhiy Storchaka
4e4088d273 Issue #17119: Fixed integer overflows when processing large strings and tuples
in the tkinter module.
2013-08-21 21:43:08 +03:00
Christian Heimes
6acbe2aaa3 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:34 +02:00
Serhiy Storchaka
5617df1be6 Issue #8865: Concurrent invocation of select.poll.poll() now raises a
RuntimeError exception.  Patch by Christian Schubert.
2013-08-20 20:50:32 +03:00