diff --git a/direct/src/ffi/FFIExternalObject.py b/direct/src/ffi/FFIExternalObject.py index d4fe62f501..26275599bf 100644 --- a/direct/src/ffi/FFIExternalObject.py +++ b/direct/src/ffi/FFIExternalObject.py @@ -179,6 +179,8 @@ class FFIExternalObject: lineStream = LineStream.LineStream() self.output(lineStream) baseRepr = lineStream.getLine() + except AssertionError, e: + raise AssertionError, e except: baseRepr = ('[' + self.__class__.__name__ + ' at: ' + `self.this` + ']') # In any case, return the baseRepr @@ -199,18 +201,24 @@ class FFIExternalObject: self.write(lineStream) while lineStream.isTextAvailable(): baseRepr = baseRepr + '\n' + lineStream.getLine() + except AssertionError, e: + raise AssertionError, e except: try: # Sometimes write insists on a seconds parameter. self.write(lineStream, 0) while lineStream.isTextAvailable(): baseRepr = baseRepr + '\n' + lineStream.getLine() + except AssertionError, e: + raise AssertionError, e except: try: # Ok, no write function, lets try output then self.output(lineStream) while lineStream.isTextAvailable(): baseRepr = baseRepr + '\n' + lineStream.getLine() + except AssertionError, e: + raise AssertionError, e except: pass # In any case, return the baseRepr