diff options
Diffstat (limited to 'Objects/frameobject.c')
| -rw-r--r-- | Objects/frameobject.c | 12 | 
1 files changed, 11 insertions, 1 deletions
| diff --git a/Objects/frameobject.c b/Objects/frameobject.c index 1ea586f..c8cf71b 100644 --- a/Objects/frameobject.c +++ b/Objects/frameobject.c @@ -604,7 +604,17 @@ static PyObject *builtin_object;  int _PyFrame_Init()  {  	builtin_object = PyString_InternFromString("__builtins__"); -	return (builtin_object != NULL); +	if (builtin_object == NULL) +		return 0; +	/*  +	   Traceback objects are not created the normal way (through calling the +	   type), so PyType_Ready has to be called here. +	*/ +	if (PyType_Ready(&PyTraceBack_Type)) { +		Py_DECREF(builtin_object); +		return 0; +	} +	return 1;  }  PyFrameObject * | 
