You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by hw...@apache.org on 2010/05/28 19:56:18 UTC

svn commit: r949242 - /subversion/trunk/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c

Author: hwright
Date: Fri May 28 17:56:17 2010
New Revision: 949242

URL: http://svn.apache.org/viewvc?rev=949242&view=rev
Log:
Attempt to improve the handling of exceptions in swig-py.  (We could do better,
but I don't have enough python-fu to do it.)

* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c
  (svn_swig_py_svn_exception): Remove traced exceptions from the chain.

Modified:
    subversion/trunk/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c

Modified: subversion/trunk/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c?rev=949242&r1=949241&r2=949242&view=diff
==============================================================================
--- subversion/trunk/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c (original)
+++ subversion/trunk/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c Fri May 28 17:56:17 2010
@@ -347,6 +347,11 @@ void svn_swig_py_svn_exception(svn_error
   if (error_chain == NULL)
     return;
 
+  /* ### It'd be really nifty to display the entire stack trace in
+         python-land (similar to what we do in JavaHL), but since that's
+         out of my league, we settle with just purging the traced frames. */
+  error_chain = svn_error_purge_tracing(error_chain);
+
   /* Start with no references. */
   args_list = args = apr_err_ob = message_ob = file_ob = line_ob = NULL;
   svn_module = exc_class = exc_ob = NULL;