Commit Graph

2268 Commits

Author SHA1 Message Date
Brett Cannon ff931573ce Backport of 64903. 2008-07-13 01:20:19 +00:00
Gregory P. Smith f8f30fad4d Backport r62627 + r62744 from trunk to fix issue 2632.
- Issue #2632: Prevent socket.read(bignumber) from over allocating memory
  in the common case when the data is returned from the underlying socket
  in increments much smaller than bignumber.
2008-07-06 04:04:07 +00:00
Brett Cannon 6d7f9375a5 Backport of r64677. 2008-07-02 22:08:29 +00:00
Amaury Forgeot d'Arc b15bdf7f7a #Issue3088 in-progress: Race condition with instances of classes derived from threading.local:
When a thread touches such an object for the first time, a new thread-local __dict__ is created,
and the __init__ method is run.
But a thread switch can occur here; if the other thread touches the same object, it installs another
__dict__; when the first thread resumes, it updates the dictionary of the second...

This is the deep cause of the failures in test_multiprocessing involving "managers" objects.

Backport of r64601.
2008-07-01 20:59:49 +00:00
Amaury Forgeot d'Arc ceda6a67ce #3242: fix a crash in "print", if sys.stdout is set to a custom object,
whose write() method installs another sys.stdout.

Backport of r64633
2008-07-01 20:52:56 +00:00
Amaury Forgeot d'Arc 3255e134fe Issue 3110: Crash with weakref subclass,
seen after a "import multiprocessing.reduction"

An instance of a weakref subclass can have attributes.
If such a weakref holds the only strong reference to the object,
deleting the weakref will delete the object. In this case,
the callback must not be called, because the ref object is being deleted!

Backport of r34309
2008-06-16 19:22:42 +00:00
Raymond Hettinger 75ee9eb9c6 Issue #3116 and #1792: Fix quadratic behavior in marshal.dumps(). 2008-06-16 01:49:18 +00:00
Gregory P. Smith 9aa040d4ab - Issue #2588, #2589: Fix potential integer underflow and overflow
conditions in the PyOS_vsnprintf C API function.

This is a backport of r63728 and r63734 from trunk.
2008-06-02 00:07:25 +00:00
Gregory P. Smith 26660401c0 Backport r62724 from trunk. Fixes issue 2791. subprocess.Popen.communicate
now closes its stdout and stderr fds as soon as it is finished with them.
2008-06-01 23:44:46 +00:00
Martin v. Löwis 5212da1b96 Patch #2111: Avoid mmap segfault when modifying a PROT_READ block. 2008-05-23 14:30:44 +00:00
Gregory P. Smith 0812de63c2 fix issue2858: potential memory corruption when any of the bsddb.db.*
constructors raised an exception.  backportes from trunk c63403.
2008-05-17 06:46:39 +00:00
Thomas Heller f3bb28395f Issue #2682: ctypes callback functions no longer contain a cyclic
reference to themselves.

Backport from trunk.
2008-04-25 19:55:19 +00:00
Amaury Forgeot d'Arc 8d904c3981 Issue #2670: urllib2.build_opener() failed when two handlers
derive the same default base class.

Backport of r62463.
2008-04-22 21:17:18 +00:00
Guido van Rossum aa975432d4 - Issue #1686386: Tuple's tp_repr did not take into account the possibility of
having a self-referential tuple, which is possible from C code.  Nor did
  object's tp_str consider that a type's tp_str could do something that could
  lead to an inifinite recursion.  Py_ReprEnter() and Py_EnterRecursiveCall(),
  respectively, fixed the issues.  (Backport of r58288 from trunk to 2.5.)
2008-04-10 22:43:58 +00:00
Gregory P. Smith 14acde30f6 Backport r62261 from trunk:
Prevent PyString_FromStringAndSize() from passing negative sizes on to lower
level memory allocation functions.  Raise a SystemError and return NULL
instead.
2008-04-09 23:41:13 +00:00
Gregory P. Smith 3782da4e0a Add a note about the zlib.decompressobj().flush() fix. 2008-04-09 18:17:13 +00:00
Georg Brandl d9f1da0f22 Backport #1442: report exception when startup file cannot be run. 2008-03-29 01:50:46 +00:00
Amaury Forgeot d'Arc 8432d86b9f Fix a reference leak found by Georg, when compiling a class nested in another class.
Test is run with "regrtest.py -R:: test_compile"

Backport of r62015
2008-03-28 20:45:42 +00:00
Amaury Forgeot d'Arc 198e353735 Issue2495: tokenize.untokenize did not insert space between two consecutive string literals:
"" "" becomes """", which is invalid code.

Backport of r61979.
2008-03-27 23:41:59 +00:00
Mark Dickinson bfdbfd4d91 Issue #2482: Make sure that the coefficient of a Decimal instance
is stored as a str instance rather than a unicode instance.
Backported from Python 2.6 (see r61904).
2008-03-25 18:58:13 +00:00
Mark Dickinson 26c25d9f64 Decimal.sqrt(0) failed when the context was not
explicitly supplied.
2008-03-25 14:35:25 +00:00
Amaury Forgeot d'Arc a79e05097b #1477: ur'\U0010FFFF' used to raise in narrow unicode builds.
Corrected the raw-unicode-escape codec to use UTF-16 surrogates in
this case, like the unicode-escape codec does.

Backport of r61793 and r61853
2008-03-24 21:16:28 +00:00
Georg Brandl d9b9d680d5 Issue #2432: give DictReader the dialect and line_num attributes
advertised in the docs.
 (backport from r61712)
2008-03-21 20:01:55 +00:00
Sean Reifscheider 4af861cb4e Back-port of rev 61240 for issue #2238, fixing: Some syntax errors in *args
and **kwargs expressions could give bogus error messages.
2008-03-20 17:39:31 +00:00
Gregory P. Smith eff5a4e901 The missing NEWS entry for r61542.. 2008-03-18 19:24:40 +00:00
Neal Norwitz b3635f99a2 Backport r61458:
Issue 2321: reduce memory usage (increase the memory that is returned
to the system) by using pymalloc for the data of unicode objects.
2008-03-18 04:17:36 +00:00
Georg Brandl ab61dce0e1 Bug #2220: handle rlcompleter attribute match failure more gracefully.
(backport from r61275)
2008-03-06 07:46:26 +00:00
Martin v. Löwis 0e30555748 Backport of r61263:
#1725737: ignore other VC directories other than CVS and SVN's too.
2008-03-06 07:14:26 +00:00
Martin v. Löwis bc89897e5f Patch #2232: os.tmpfile might fail on Windows if the user has no
permission to create files in the root directory.
2008-03-06 06:57:02 +00:00
Andrew M. Kuchling 664553a778 #1389051, #1092502: fix excessively large allocations when using read() on a socket 2008-02-23 19:30:59 +00:00
Andrew M. Kuchling 37d4f7bc0c #1389051: IMAP module tries to read entire message in one chunk. Patch by Fredrik Lundh. 2008-02-23 19:06:54 +00:00
Andrew M. Kuchling 05a19a507d #1433694: minidom's .normalize() failed to set .nextSibling for last element.
Fix by Malte Helmert
2008-02-23 17:21:44 +00:00
Andrew M. Kuchling be0adfcfa8 Update NEWS for a future 2.5.3 release 2008-02-23 17:18:19 +00:00
Andrew M. Kuchling b66dc46ee0 Add old NEWS item 2008-02-23 17:14:23 +00:00
Martin v. Löwis bcffd10596 Prepare for 2.5.2. 2008-02-21 10:04:55 +00:00
Martin v. Löwis 328c643bcb Bug #2137: Remove test_struct.test_crasher, which was meaningful
only on 32-bit systems.
2008-02-18 17:46:27 +00:00
Martin v. Löwis 42e4124304 Revert 60793 for test_array; on a 64-bit system,
MemoryError was not guaranteed.
2008-02-15 19:52:38 +00:00
Martin v. Löwis 9c04257bf9 Fix deallocation of array objects when allocation ran out of memory. 2008-02-15 19:11:46 +00:00
Martin v. Löwis a859e25acb Preparing for 2.5.2c1. 2008-02-14 12:33:15 +00:00
Martin v. Löwis 73c01d4101 Added checks for integer overflows, contributed by Google. Some are
only available if asserts are left in the code, in cases where they
can't be triggered from Python code.
2008-02-14 11:26:18 +00:00
Martin v. Löwis e9c996c14d Patch #1966: Break infinite loop in httplib when the servers
implements the chunked encoding incorrectly.
2008-02-12 18:48:23 +00:00
Martin v. Löwis cab74c8398 Backport of r60743:
Patch #1736: Fix file name handling of _msi.FCICreate.
2008-02-12 13:48:06 +00:00
Lars Gustäbel 08303dbd72 Backport the nts() function from the trunk. This fixes problems with
the xstar format that puts extra fields inside the space that POSIX
has reserved for the prefix field.
2008-02-11 18:36:07 +00:00
Nick Coghlan 5ca1cba252 Backport relevant part of issue 2021 fix (r60695): Support with statement properly in tempfile.NamedTemporaryFile 2008-02-11 12:53:42 +00:00
Amaury Forgeot d'Arc 3e5f8a6975 issue 2045: Infinite recursion when printing a subclass of defaultdict,
if default_factory is set to a bound method.

Backport of r60663.
2008-02-08 01:05:21 +00:00
Thomas Heller 527bf3a826 Fix the way methods are created for the _ctypes.COMError exception
type; this fix is already in the trunk.
2008-02-06 19:58:46 +00:00
Lars Gustäbel 42993fef1c Issue #1507247, #2004: Use mode 0700 for temporary directories and
default permissions for missing directories.

(backport from r53526, r60588)
2008-02-05 12:00:20 +00:00
Amaury Forgeot d'Arc 316f8a8d3c backport of r60575 (issue #1750076): Debugger did not step on every iteration of a while statement.
The mapping between bytecode offsets and source lines (lnotab) did not contain
an entry for the beginning of the loop.

Now it does, and the lnotab can be a bit larger:
in particular, several statements on the same line generate several entries.
However, this does not bother the settrace function, which will trigger only
one 'line' event.

The lnotab seems to be exactly the same as with python2.4.
2008-02-04 22:34:57 +00:00
Guido van Rossum d66e94d0e6 Backport r59862 (issue #712900): make long regexp matches interruptable
by signals.
2008-02-04 22:00:35 +00:00
Brett Cannon 912ba54394 Backport r60537: have order of CPPFLAGS and LDFLAGS be honored. 2008-02-03 09:58:02 +00:00
Gregory P. Smith 946de92f9b backport r60544 from trunk:
Merge this fix from the pybsddb tree:
r293 | jcea | 2008-01-31 01:08:19 -0800 (Thu, 31 Jan 2008) | 4 lines

Solved memory leak when using cursors with
databases without environment.
2008-02-03 07:26:23 +00:00
Christian Heimes ab8fe4e01f Bug #1234: Fixed semaphore errors on AIX 5.2 2008-01-30 22:54:27 +00:00
Thomas Heller c9b20734f4 Revert rev. 59926, it breaks comtypes (I need to further examine this). 2008-01-28 08:42:22 +00:00
Georg Brandl ee50e3c734 #1940: make it possible to use curses.filter() before curses.initscr()
as the documentation says.
 (backport from rev. 60322)
2008-01-26 14:03:51 +00:00
Amaury Forgeot d'Arc f1a7178cd5 #1920: when considering a block starting by "while 0", the compiler optimized the
whole construct away, even when an 'else' clause is present::

    while 0:
        print("no")
    else:
        print("yes")

did not generate any code at all.

Now the compiler emits the 'else' block, like it already does for 'if' statements.

Backport of r60265.
2008-01-24 23:42:08 +00:00
Guido van Rossum d933e0a7d3 News for some crashers I fixed recently.
Also removed three non-ASCII chars at start of file.
2008-01-24 18:28:37 +00:00
Thomas Heller fe528ebf68 Invert the checks in get_[u]long and get_[u]longlong. The intent was
to not accept float types; the result was that integer-like objects
were not accepted.
2008-01-24 13:08:54 +00:00
Christian Heimes d2f4cb8cca Fixed bug #1915: Python compiles with --enable-unicode=no again. However several extension methods and modules do not work without unicode support. 2008-01-23 14:20:41 +00:00
Gregory P. Smith 8f034d9af2 Backport of r60190:
- Fix Issue #1703448: A joined thread could show up in the
  threading.enumerate() list after the join() for a brief period until
  it actually exited.
2008-01-22 01:29:11 +00:00
Mark Dickinson 2bebadfe51 Issue 1678380: fix a bug identifying -0.0 and 0.0 2008-01-21 21:54:47 +00:00
Georg Brandl 78d50ccdf9 Add NEWS entry for #1882.
(backport from rev. 60170)
2008-01-21 18:36:54 +00:00
Gregory P. Smith 1cc98af8a1 backport r60116 - fix zipfile to work with archives having file
headers beyond the signed 2**31 byte boundary.
2008-01-19 23:16:01 +00:00
Gregory P. Smith c223c6cb41 backport r60104 + r60111 from trunk.
- Issue #1336: fix a race condition in subprocess.Popen if the garbage
  collector kicked in at the wrong time that would cause the process
  to hang when the child wrote to stderr.
2008-01-19 22:29:41 +00:00
Georg Brandl 7829d603a8 Backport r59688. 2008-01-19 20:34:19 +00:00
Gregory P. Smith 0f99b71bd0 ** backport r60015 from trunk.
- Issue829951: In the smtplib module, SMTP.starttls() now complies with
  RFC 3207 and forgets any knowledge obtained from the server not obtained
  from the TLS negotiation itself.  Patch contributed by Bill Fenner.
2008-01-17 07:54:47 +00:00
Thomas Heller f43a86b9d7 Backport from trunk:
Fix a potential 'SystemError: NULL result without error'.
  NULL may be a valid return value from PyLong_AsVoidPtr.
Also move an older ctypes NEWS item in the correct category.
2008-01-16 19:24:20 +00:00
Raymond Hettinger 665ddc9bb3 Fix 1698398: Zipfile.printdir() crashed because the format string expected a tuple object of length six instead of a time.struct_time object. 2008-01-14 23:02:51 +00:00
Thomas Heller b9c741c43c Added NEWS entry, plus:
Merged revisions 59925 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk/Modules/_ctypes

........
  r59925 | thomas.heller | 2008-01-11 20:34:06 +0100 (Fr, 11 Jan 2008) | 5 lines

  Raise an error instead of crashing with a segfault when a NULL
  function pointer is called.

  Will backport to release25-maint.
........
2008-01-11 19:48:46 +00:00
Mark Dickinson 4a3c7c78fb Add Decimal backport to Misc/NEWS 2008-01-09 01:02:07 +00:00
Andrew M. Kuchling 7a062c6dca Patch 1114: fix compilation of curses module on 64-bit AIX, and any other LP64 platforms where attr_t isn't a C long 2008-01-08 14:58:52 +00:00
Guido van Rossum 6e3e6e0d77 Forgot to backport the rest of #1637. 2008-01-06 02:40:07 +00:00
Lars Gustäbel e5f9e588c6 Issue #1735: TarFile.extractall() now correctly sets directory
permissions and times.

(backport from r59712)
2008-01-04 14:44:23 +00:00
Christian Heimes 12f03ccece Bug #1713: posixpath.ismount() claims symlink to a mountpoint is a mountpoint. 2008-01-04 13:22:36 +00:00
Guido van Rossum 3b4a5bd9da Fix bug #1301 -- a bad assert in _tkinter. 2008-01-03 23:52:04 +00:00
Guido van Rossum 6df9a82bd3 Issue #1700, reported by Nguyen Quan Son, fix by Fredruk Lundh:
Regular Expression inline flags not handled correctly for some unicode
characters.
2008-01-03 19:08:15 +00:00
Guido van Rossum 309e241881 Add some news items I missed. Careful inspection of the svn log output
reveals that a lot more are missing.  If you checked anything into the
2.5.2 branch without updating Misc/NEWS, please correct your mistake!
2008-01-03 18:57:40 +00:00
Martin v. Löwis ff36b2ce00 Bug #1699: Define _BSD_SOURCE only on OpenBSD. 2007-12-29 18:48:57 +00:00
Brett Cannon 35b84b4123 Backport of fix for issue 1695. 2007-12-24 20:00:42 +00:00
Christian Heimes c2b0d17b31 Fixed merge glitch, second try 2007-12-18 22:03:10 +00:00
Christian Heimes 3880210545 Fixed merge glitch 2007-12-18 22:00:19 +00:00
Christian Heimes 60d96cd54c Backport of #1638: %zd configure test fails on Linux 2007-12-18 21:14:54 +00:00
Thomas Heller 8e9e4d8f95 Issue #1642: Fix segfault in ctypes when trying to delete attributes. 2007-12-18 19:00:59 +00:00
Guido van Rossum d4029c8fda Bug #1608: use -fwrapv when GCC supports it. This is important, newer
GCC versions may optimize away overflow buffer overflow checks without
this option!  Thanks to Ismail Donmez.  No thanks to the GCC devs.
2007-12-13 20:42:33 +00:00
Christian Heimes 03acd85dbf merge -r59315:59316 from py3k: Fix issue #1553: An errornous __length_hint__ can make list() raise a SystemError 2007-12-05 12:51:23 +00:00
Martin v. Löwis c8dbc92395 os.access now returns True on Windows for any existing directory. 2007-12-03 22:39:10 +00:00
Lars Gustäbel 7cc9c8bbe1 Issue #1531: Read fileobj from the current offset, do not seek to
the start.

(backport from r59260)
2007-12-01 21:06:06 +00:00
Amaury Forgeot d'Arc 8334a4fc31 Backport of r59241: str.decode fails on very long strings on 64bit platforms.
PyArgs_ParseTuple t# and w# formats truncated the lengths to 32bit.
2007-11-30 21:53:17 +00:00
Skip Montanaro 664ad76a34 back in these go - thanks to Titus Brown for the fix 2007-11-24 14:31:16 +00:00
Amaury Forgeot d'Arc 30f61cbb13 Issue #1445: Fix a SystemError when accessing the ``cell_contents``
attribute of an empty cell object.  Now a ValueError is raised.

Backport of r59170.
2007-11-24 13:53:29 +00:00
Skip Montanaro 9163783881 revert 2007-11-24 04:31:07 +00:00
Skip Montanaro 5a001c0c2c issue 1429818 2007-11-23 17:13:21 +00:00
Martin v. Löwis 3903f50f2e Allow simultaneous installation of 32-bit and 64-bit versions
on 64-bit Windows systems.
2007-11-22 06:47:17 +00:00
Brett Cannon d3a81df178 Backport of r59082 (doctest and using __loader__.get_data()). 2007-11-21 00:58:54 +00:00
Christian Heimes 946a51c187 Fixed #1372: zlibmodule.c: int overflow in PyZlib_decompress 2007-11-21 00:44:57 +00:00
Amaury Forgeot d'Arc c572dc3752 Backport for issue1265 (pdb bug with "with" statement).
When an unfinished generator-iterator is garbage collected, PyEval_EvalFrameEx
is called with a GeneratorExit exception set.  This leads to funny results
if the sys.settrace function itself makes use of generators.
A visible effect is that the settrace function is reset to None.
Another is that the eventual "finally" block of the generator is not called.

It is necessary to save/restore the exception around the call to the trace
function.

This happens a lot with py3k: isinstance() of an ABCMeta instance runs
    def __instancecheck__(cls, instance):
        """Override for isinstance(instance, cls)."""
        return any(cls.__subclasscheck__(c)
                   for c in {instance.__class__, type(instance)})
which lets an opened generator expression each time it returns True.

And the problem can be reproduced in 2.5 with pure python code.
2007-11-13 22:43:05 +00:00
Guido van Rossum f5ccd459d7 News about list_repeat() fix. 2007-11-13 05:23:21 +00:00
Nick Coghlan e53fcfd7d3 Fix issue #1705170 (backport from trunk) 2007-11-07 12:26:40 +00:00
Gregory P. Smith a1e5387ec5 Backport r58868:
Fixes Issue 1385: The hmac module now computes the correct hmac when using
  hashes with a block size other than 64 bytes (such as sha384 and sha512).
2007-11-06 00:32:04 +00:00
Gregory P. Smith 2c3e0d94b2 Backport r58757, r58758, r58759.
Undoes incorrect dbtables fix and errant strdup introduced as
described below:

r58757 | gregory.p.smith | 2007-11-01 14:08:14 -0700 (Thu, 01 Nov 2007) | 4 lines

Fix bug introduced in revision 58385.  Database keys could no longer
have NULL bytes in them.  Replace the errant strdup with a
malloc+memcpy.  Adds a unit test for the correct behavior.

r58758 | gregory.p.smith | 2007-11-01 14:15:36 -0700 (Thu, 01 Nov 2007) | 3 lines

Undo revision 58533 58534 fixes.  Those were a workaround for
a problem introduced by 58385.

r58759 | gregory.p.smith | 2007-11-01 14:17:47 -0700 (Thu, 01 Nov 2007) | 2 lines

false "fix" undone as correct problem was found and fixed.
2007-11-01 21:22:40 +00:00
Matthias Klose e467dbc3d0 - Build using system ffi library on arm*-linux*. 2007-10-24 20:34:07 +00:00