'If the operation raised an exception, return the `Exception`
object.  Otherwise returns None.'

def exception(self, timeout=None):

    self._clear_tb_log()
    if (self._exc_info is not None):
        return self._exc_info[1]
    else:
        self._check_done()
        return None
