saving an exception

Steve Holden steve at holdenweb.com
Tue Oct 3 02:46:28 EDT 2006


Bryan wrote:
> hi,
> 
> i would like to save an exception and reraise it at a later time.
> 
> 
> something similar to this:
> 
> exception = None
> def foo():
>     try:
>         1/0 
>     except Exception, e:
>         exception = e
> 
> if exception: raise exception
> 
> 
> i have a need to do this because in my example foo is a callback from c code
> which was originally called from python and i can't modify the c code. 
> with the above code, i'm able to successfully raise the exception, but the
> line number of the exception is at the place of the explicit raise instead
> of the where the exception originally occurred.  is there anyway to fix
> this?
> 
You can capture the trace at the time the original exception is raised, 
if that would help? I think the traceback module lets you do that.

regards
  Steve
-- 
Steve Holden       +44 150 684 7255  +1 800 494 3119
Holden Web LLC/Ltd          http://www.holdenweb.com
Skype: holdenweb       http://holdenweb.blogspot.com
Recent Ramblings     http://del.icio.us/steve.holden




More information about the Python-list mailing list