[pypy-commit] pypy default: Fix.
arigo
noreply at buildbot.pypy.org
Sun Apr 1 16:25:48 CEST 2012
Author: Armin Rigo <arigo at tunes.org>
Branch:
Changeset: r54118:ee1a3b5094b8
Date: 2012-04-01 16:25 +0200
http://bitbucket.org/pypy/pypy/changeset/ee1a3b5094b8/
Log: Fix.
diff --git a/pypy/module/cpyext/pyerrors.py b/pypy/module/cpyext/pyerrors.py
--- a/pypy/module/cpyext/pyerrors.py
+++ b/pypy/module/cpyext/pyerrors.py
@@ -2,6 +2,7 @@
from pypy.rpython.lltypesystem import rffi, lltype
from pypy.interpreter.error import OperationError
+from pypy.interpreter import pytraceback
from pypy.module.cpyext.api import cpython_api, CANNOT_FAIL, CONST_STRING
from pypy.module.exceptions.interp_exceptions import W_RuntimeWarning
from pypy.module.cpyext.pyobject import (
@@ -364,10 +365,12 @@
if w_value is None or space.is_w(w_value, space.w_None):
operror = None
else:
- if w_traceback is None or space.is_w(w_traceback, space.w_None):
- tb = None
- else:
- tb = w_traceback
+ tb = None
+ if w_traceback is not None:
+ try:
+ tb = pytraceback.check_traceback(space, w_traceback, '?')
+ except OperationError: # catch and ignore bogus objects
+ pass
operror = OperationError(w_type, w_value, tb)
#
ec = space.getexecutioncontext()
More information about the pypy-commit
mailing list