Victor Stinner [Mon, 1 Jul 2013 22:17:14 +0000 (00:17 +0200)]
(Merge 3.3) Issue #18343: faulthandler.register() now keeps the previous signal
handler when the function is called twice, so faulthandler.unregister()
restores correctly the original signal handler.
Victor Stinner [Mon, 1 Jul 2013 22:14:56 +0000 (00:14 +0200)]
Issue #18343: faulthandler.register() now keeps the previous signal handler
when the function is called twice, so faulthandler.unregister() restores
correctly the original signal handler.
Issue #18328: Reorder ops in PyThreadState_Delete*() functions. Now the
tstate is first removed from TLS and then deallocated.
CID 1019639 (#1 of 1): Use after free (USE_AFTER_FREE)
use_after_free: Using freed pointer tstate.
Issue #18328: Reorder ops in PyThreadState_Delete*() functions. Now the
tstate is first removed from TLS and then deallocated.
CID 1019639 (#1 of 1): Use after free (USE_AFTER_FREE)
use_after_free: Using freed pointer tstate.
Terry Jan Reedy [Sun, 30 Jun 2013 20:52:19 +0000 (16:52 -0400)]
Issue 18189: remove unused methods in idlelib.Delegator.Delegator.
Idle code already uses x.delegate instead of x.getdelegate().
The printed report must have been for testing.
Christian Heimes [Sat, 29 Jun 2013 19:37:34 +0000 (21:37 +0200)]
Fix resource leak in pickle module
CID 983309 (#1 of 1): Resource leak (RESOURCE_LEAK)
leaked_storage: Variable unicode_str going out of scope leaks the storage it points to.
Christian Heimes [Sat, 29 Jun 2013 19:21:37 +0000 (21:21 +0200)]
Fix ref leak in error case of unicode index
CID 983319 (#1 of 2): Resource leak (RESOURCE_LEAK)
leaked_storage: Variable substring going out of scope leaks the storage it points to.
Christian Heimes [Sat, 29 Jun 2013 19:17:34 +0000 (21:17 +0200)]
Fix ref leak in error case of unicode rindex and rfind
CID 983320: Resource leak (RESOURCE_LEAK)
CID 983321: Resource leak (RESOURCE_LEAK)
leaked_storage: Variable substring going out of scope leaks the storage it points to.
Christian Heimes [Sat, 29 Jun 2013 19:03:51 +0000 (21:03 +0200)]
Fix resource leak in parser, free node ptr
CID 1028068 (#1 of 1): Resource leak (RESOURCE_LEAK)
leaked_storage: Variable n going out of scope leaks the storage it points to.
Christian Heimes [Sat, 29 Jun 2013 18:43:13 +0000 (20:43 +0200)]
Fix memory leak in pyexpat PyUnknownEncodingHandler
CID 1040367 (#1 of 1): Resource leak (RESOURCE_LEAK)
leaked_storage: Variable u going out of scope leaks the storage it points to.
Christian Heimes [Sat, 29 Jun 2013 18:41:06 +0000 (20:41 +0200)]
Fix memory leak in endswith
CID 1040368 (#1 of 1): Resource leak (RESOURCE_LEAK)
leaked_storage: Variable substring going out of scope leaks the storage it points to.
Terry Jan Reedy [Sat, 29 Jun 2013 03:50:12 +0000 (23:50 -0400)]
Issue *18081, #18242: Change Idle warnings capture in PyShell and run to stop
replacing warnings.formatwarnings and to reverse replacement of
warnings.showwarnings when import is complete and when main function exits.
Add test_warning.py. Vinay Sajip provided capture_warnings function.
Terry Jan Reedy [Fri, 28 Jun 2013 22:59:28 +0000 (18:59 -0400)]
Issue #18315: Improve fileinput docs by adding 'bufsize' where missing and
replacing redundant signature in input() docstring with one-line summary.
Original patch by Terrel Shumway.
R David Murray [Fri, 28 Jun 2013 18:52:57 +0000 (14:52 -0400)]
Improve imap error message in unusual failure mode.
We ran into this during the sprits at PyCon and this patch has been
sitting on my disk ever since. This just adds some information to the
error message that we found useful during debugging. There's no good
way to add a test, since the message only got generated via code
that we had modified for debugging purposes.
R David Murray [Thu, 27 Jun 2013 22:37:00 +0000 (18:37 -0400)]
#14360: make encoders.encode_quopri work.
There were no tests for the encoders module. encode_base64 worked
because it is the default and so got tested implicitly elsewhere, and
we use encode_7or8bit internally, so that worked, too. I previously
fixed encode_noop, so this fix means that everythign in the encoders
module now works, hopefully correctly. Also added an explicit test
for encode_base64.
R David Murray [Wed, 26 Jun 2013 16:06:21 +0000 (12:06 -0400)]
#11454: Reduce email module load time, improve surrogate check efficiency.
The new _has_surrogates code was suggested by Serhiy Storchaka. See
the issue for timings, but it is far faster than any other alternative,
and also removes the load time that we previously incurred from compiling
the complex regex this replaces.
Victor Stinner [Tue, 25 Jun 2013 20:54:35 +0000 (22:54 +0200)]
Fix time.mktime() and datetime.datetime.timestamp() on AIX
On AIX, the C function mktime() alwaysd sets tm_wday, even on error. So tm_wday
cannot be used as a sentinel to detect an error, we can only check if the
result is (time_t)-1.
Victor Stinner [Tue, 25 Jun 2013 19:54:17 +0000 (21:54 +0200)]
Issue #17206: Fix test_cmd_line and test_faulthandler for my previous change
(test.regrtest and test.script_helper enable faulthandler module in
subprocesses).
Victor Stinner [Mon, 24 Jun 2013 22:43:47 +0000 (00:43 +0200)]
(Merge 3.3) Issue #18135: ssl.SSLSocket.write() now raises an OverflowError if
the input string in longer than 2 gigabytes, and
ssl.SSLContext.load_cert_chain() raises a ValueError if the password is longer
than 2 gigabytes. The ssl module does not support partial write.
Victor Stinner [Mon, 24 Jun 2013 22:42:31 +0000 (00:42 +0200)]
Issue #18135: ssl.SSLSocket.write() now raises an OverflowError if the input
string in longer than 2 gigabytes, and ssl.SSLContext.load_cert_chain() raises
a ValueError if the password is longer than 2 gigabytes. The ssl module does
not support partial write.
Victor Stinner [Mon, 24 Jun 2013 21:47:41 +0000 (23:47 +0200)]
Issue #9566: recv(), recvfrom(), send(), sendall() and sendto() methods
of socket.socket objects now truncate the input buffer to INT_MAX bytes on
Windows to avoid an integer overflow.