Show More
@@ -182,7 +182,10 b' def map_vcs_exceptions(func):' | |||
|
182 | 182 | # __traceback_info__ in a frame object. This way the remote |
|
183 | 183 | # traceback information is made available in error reports. |
|
184 | 184 | remote_tb = getattr(e, '_vcs_server_traceback', None) |
|
185 | __traceback_info__ = None | |
|
185 | 186 | if remote_tb: |
|
187 | if isinstance(remote_tb, basestring): | |
|
188 | remote_tb = [remote_tb] | |
|
186 | 189 | __traceback_info__ = ( |
|
187 | 190 | 'Found VCSServer remote traceback information:\n\n' + |
|
188 | 191 | '\n'.join(remote_tb)) |
@@ -194,8 +197,14 b' def map_vcs_exceptions(func):' | |||
|
194 | 197 | # to translate them to the proper exception class in the vcs |
|
195 | 198 | # client layer. |
|
196 | 199 | kind = getattr(e, '_vcs_kind', None) |
|
200 | ||
|
197 | 201 | if kind: |
|
198 |
|
|
|
202 | if any(e.args): | |
|
203 | args = e.args | |
|
204 | else: | |
|
205 | args = [__traceback_info__ or 'unhandledException'] | |
|
206 | ||
|
207 | raise _EXCEPTION_MAP[kind](*args) | |
|
199 | 208 | else: |
|
200 | 209 | raise |
|
201 | 210 | return wrapper |
General Comments 0
You need to be logged in to leave comments.
Login now