• Guido van Rossum's avatar
    Fix a nasty endcase reported by Armin Rigo in SF bug 618623: · 049cd6b5
    Guido van Rossum yazdı
    '%2147483647d' % -123 segfaults.  This was because an integer overflow
    in a comparison caused the string resize to be skipped.  After fixing
    the overflow, this could call _PyString_Resize() with a negative size,
    so I (1) test for that and raise MemoryError instead; (2) also added a
    test for negative newsize to _PyString_Resize(), raising SystemError
    as for all bad arguments.
    
    An identical bug existed in unicodeobject.c, of course.
    
    Will backport to 2.2.2.
    049cd6b5
unicodeobject.c 171 KB