[issue3639] segfaults calling warnings.warn() with non-string message

2008-09-01 Thread Brett Cannon
Brett Cannon <[EMAIL PROTECTED]> added the comment: Checked in r66140. -- resolution: -> accepted status: open -> closed ___ Python tracker <[EMAIL PROTECTED]> ___ ___

[issue3639] segfaults calling warnings.warn() with non-string message

2008-09-01 Thread Benjamin Peterson
Changes by Benjamin Peterson <[EMAIL PROTECTED]>: -- keywords: -needs review ___ Python tracker <[EMAIL PROTECTED]> ___ ___ Python-bugs

[issue3639] segfaults calling warnings.warn() with non-string message

2008-08-22 Thread Benjamin Peterson
Benjamin Peterson <[EMAIL PROTECTED]> added the comment: On Fri, Aug 22, 2008 at 2:59 PM, Brett Cannon <[EMAIL PROTECTED]> wrote: > > Brett Cannon <[EMAIL PROTECTED]> added the comment: > > That's why the keyword is set. =) Ah. I missed that. :) The patch looks fine. > >

[issue3639] segfaults calling warnings.warn() with non-string message

2008-08-22 Thread Brett Cannon
Brett Cannon <[EMAIL PROTECTED]> added the comment: That's why the keyword is set. =) ___ Python tracker <[EMAIL PROTECTED]> ___ ___ Python-bugs-

[issue3639] segfaults calling warnings.warn() with non-string message

2008-08-22 Thread Benjamin Peterson
Benjamin Peterson <[EMAIL PROTECTED]> added the comment: Brett, is this patch ready for review? -- nosy: +benjamin.peterson ___ Python tracker <[EMAIL PROTECTED]> ___ _

[issue3639] segfaults calling warnings.warn() with non-string message

2008-08-22 Thread Brett Cannon
Brett Cannon <[EMAIL PROTECTED]> added the comment: The patch doesn't actually bother with a translation as the code causing issue is only there to prevent infinite recursion. So if the object being used is not a string, then there is no need to worry as it is not part of the infinite recursion p

[issue3639] segfaults calling warnings.warn() with non-string message

2008-08-22 Thread Brett Cannon
Brett Cannon <[EMAIL PROTECTED]> added the comment: On Fri, Aug 22, 2008 at 8:03 AM, Daniel Diniz <[EMAIL PROTECTED]> wrote: > > Daniel Diniz <[EMAIL PROTECTED]> added the comment: > > Brett, > I don't think I know C (and CPython) enough to fix this. I was able to > get rid of this specific segfa

[issue3639] segfaults calling warnings.warn() with non-string message

2008-08-22 Thread Daniel Diniz
Daniel Diniz <[EMAIL PROTECTED]> added the comment: Brett, I don't think I know C (and CPython) enough to fix this. I was able to get rid of this specific segfault with this: -const char *text_char = _PyUnicode_AsString(text); +const char *text_char = _PyUnicode_AsString(

[issue3639] segfaults calling warnings.warn() with non-string message

2008-08-21 Thread Brett Cannon
Brett Cannon <[EMAIL PROTECTED]> added the comment: If you search for _PyUnicode_AsString() in Python/_warnings.c you will find several places that assume that the proper measures have been taken to make sure the object is a string. All of those places need to be fixed so that if a string is not

[issue3639] segfaults calling warnings.warn() with non-string message

2008-08-21 Thread Daniel Diniz
Daniel Diniz <[EMAIL PROTECTED]> added the comment: Two small clues. First, a backtrace: #0 0xb7df102a in strcmp () from /lib/tls/i686/cmov/libc.so.6 #1 0x0809e678 in warn_explicit (category=0x81dd140, message=0xb7ac58f4, filename=0xb7acced0, lineno=1, module=0xb7f53300, registry=0xb7ac9e

[issue3639] segfaults calling warnings.warn() with non-string message

2008-08-21 Thread Benjamin Peterson
Changes by Benjamin Peterson <[EMAIL PROTECTED]>: -- assignee: -> brett.cannon nosy: +brett.cannon priority: -> release blocker ___ Python tracker <[EMAIL PROTECTED]> ___ ___

[issue3639] segfaults calling warnings.warn() with non-string message

2008-08-21 Thread Lisandro Dalcin
New submission from Lisandro Dalcin <[EMAIL PROTECTED]>: from warnings import warn warn("hello world") # -> Success warn(UserWarning) # -> Segmentation fault warn(None) # -> Segmentation fault warn(1) # -> Segmentation fault -- components: Interpreter Core message