| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
subclasses.
|
|
|
|
|
|
|
|
| |
segfault the interpreter during weakref clean up. Now any new weakrefs created
after __del__ is run are removed silently.
Fixes bug #1377858 and the weakref_in_del crasher for new-style classes.
Classic classes are still affected.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SF patch #1630975: Fix crash when replacing sys.stdout in sitecustomize
When running the interpreter in an environment that would cause it to set
stdout/stderr/stdin's encoding, having a sitecustomize that would replace
them with something other than PyFile objects would crash the interpreter.
Fix it by simply ignoring the encoding-setting for non-files.
This could do with a test, but I can think of no maintainable and portable
way to test this bug, short of adding a sitecustomize.py to the buildsystem
and have it always run with it (hmmm....)
|
| |
|
| |
|
|
|
|
|
|
| |
rev 52964 sf 1576657 KeyError unpacks tuple arguments
rev 52963 sf 1456209 obscure resizing vulnerability
rev 52962 redundant calls to PyObject_Hash()
|
|
|
|
| |
Fixes #1591996. Patch contributed by Neal Norwitz.
|
| |
|
|
|
|
|
| |
the tuple isn't used as the "exception arguments tuple".
(backport from rev. 52535)
|
|
|
|
| |
Don't inline Py_ADDRESS_IN_RANGE with gcc 4+ either.
|
|
|
|
| |
Prevent crash if alloc of garbage fails. Found by Typo.pl.
|
|
|
|
|
| |
Fix warnings with HP's C compiler. It doesn't recognize that infinite
loops are, um, infinite. These conditions should not be able to happen.
|
|
|
|
|
|
|
| |
not the posix error code; with test.
Fixes #1576174.
Backported from trunk, revision 52485.
|
|
|
|
|
| |
embedded in the string to convert.
(backport from rev. 52305)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* unified the way intobject, longobject and mystrtoul handle
values around -sys.maxint-1.
* in general, trying to entierely avoid overflows in any computation
involving signed ints or longs is extremely involved. Fixed a few
simple cases where a compiler might be too clever (but that's all
guesswork).
* more overflow checks against bad data in marshal.c.
* 2.5 specific: fixed a number of places that were still confusing int
and Py_ssize_t. Some of them could potentially have caused
"real-world" breakage.
* list.pop(x): fixing overflow issues on x was messy. I just reverted
to PyArg_ParseTuple("n"), which does the right thing. (An obscure
test was trying to give a Decimal to list.pop()... doesn't make
sense any more IMHO)
* trying to write a few tests...
|
|
|
|
| |
on undefined behaviour of the C compiler anymore.
|
|
|
|
|
| |
number of arguments, as was the case in Python 2.4.
(backport from rev. 52061)
|
|
|
|
|
|
| |
keyword arguments any more (previously they accepted them, but didn't
use them).
(backport from rev. 52058)
|
| |
|
|
|
|
| |
Fixes bug #1551432.
|
|
|
|
| |
fix setobject.c refcounts and error checks.
|
|
|
|
|
|
| |
Also make sure that every exception class has __module__ set to
'exceptions'.
(backport)
|
|
|
|
| |
though this should not be able to happen since we already parsed the args)
|
|
|
|
| |
Partially from SF patch #1551339, but also taken from head.
|
| |
|
|
|
|
|
| |
checking to live happily with recent gcc optimizations that
assume signed integer arithmetic never overflows.
|
|
|
|
|
|
| |
a unicode string in a build with wide unicode (UCS-4) support.
I will forward port to 2.6. Can someone backport to 2.4?
|
| |
|
|
|
|
|
|
| |
object so we don't leak op. (Fixes an earlier patch to this code)
Klockwork #350
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Replace UnicodeDecodeErrors raised during == and !=
compares of Unicode and other objects with a new
UnicodeWarning.
All other comparisons continue to raise exceptions.
Exceptions other than UnicodeDecodeErrors are also left
untouched.
|
|
|
|
|
| |
about the best we can do is call PyErr_WriteUnraisable and go on.
We won't be able to do the call below either, so verify delstr is valid.
|
|
|
|
|
|
| |
__oct__, __hex__ don't return a string.
Klocwork 308
|
|
|
|
| |
Should fix most of Klocwork 234-272.
|
|
|
|
|
|
|
|
|
|
|
| |
were failing due to inappropriate clipping of numbers larger than 2**31
with new-style classes. (typeobject.c) In reviewing the code for classic
classes, there were 2 problems. Any negative value return could be returned.
Always return -1 if there was an error. Also make the checks similar
with the new-style classes. I believe this is correct for 32 and 64 bit
boxes, including Windows64.
Add a test of classic classes too.
|
|
|
|
|
|
|
| |
I modified this patch some by fixing style, some error checking, and adding
XXX comments. This patch requires review and some changes are to be expected.
I'm checking in now to get the greatest possible review and establish a
baseline for moving forward. I don't want this to hold up release if possible.
|
|
|
|
|
|
| |
Check seq in both portions of if/else.
Klocwork #289-290.
|
|
|
|
| |
were not supposed to go it. Only Modules/_ctypes/cfields.c was supposed to be changed
|
|
|
|
| |
Klocwork #233
|
|
|
|
|
|
|
| |
This is the first batch of fixes that should be easy to verify based on context.
This fixes problem numbers: 220 (ast), 323-324 (symtable),
321-322 (structseq), 215 (array), 210 (hotshot), 182 (codecs), 209 (etree).
|
| |
|
|
|
|
|
| |
value is obtained by invoking hash on the long int.
Fixes #1536021.
|
|
|
|
| |
must not.
|
|
|
|
|
|
|
| |
PyMapping_Size and PySequence_Size.
Because len() tries first sequence, then mapping size, it will always
raise a "non-mapping object has no len" error which is confusing.
|
| |
|
| |
|
| |
|
| |
|