X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=src%2Fbindings%2Fpython%2Fbt2%2Fbt2%2Ferror.py;h=07d24714be423651ed3ab4d1a1205d9fc8ca34ba;hp=a50827a85b3889d3c86b4fb780d20df4d20b0c0a;hb=7d30475f16814c503a3f3188de7bc85dd029d887;hpb=2efcc711c0d55d090def3c10365cd87c2a2e5511 diff --git a/src/bindings/python/bt2/bt2/error.py b/src/bindings/python/bt2/bt2/error.py index a50827a8..07d24714 100644 --- a/src/bindings/python/bt2/bt2/error.py +++ b/src/bindings/python/bt2/bt2/error.py @@ -26,11 +26,10 @@ class _ErrorCause: self._module_name = native_bt.error_cause_get_module_name(ptr) self._file_name = native_bt.error_cause_get_file_name(ptr) self._line_number = native_bt.error_cause_get_line_number(ptr) + self._str = native_bt.bt2_format_bt_error_cause(ptr) def __str__(self): - s = '[{}] ({}:{})\n'.format(self.module_name, self.file_name, self.line_number) - s += self.message - return s + return self._str @property def message(self): @@ -169,6 +168,7 @@ class _Error(Exception, abc.Sequence): assert self._ptr is not None self._msg = msg + self._str = msg + '\n' + native_bt.bt2_format_bt_error(self._ptr) # Read everything we might need from the error pointer, so we don't # depend on it. It's possible for the user to keep an Error object @@ -212,7 +212,4 @@ class _Error(Exception, abc.Sequence): return len(self._causes) def __str__(self): - s = self._msg + '\n' - for c in reversed(self): - s += str(c) + '\n' - return s + return self._str