diff --git a/webssh/handler.py b/webssh/handler.py index 87b19c6..0b1f2f7 100644 --- a/webssh/handler.py +++ b/webssh/handler.py @@ -427,12 +427,16 @@ class IndexHandler(MixinHandler, tornado.web.RequestHandler): ] for command in commands: - _, stdout, _ = ssh.exec_command(command, get_pty=True) - data = stdout.read() - logging.debug('{!r} => {!r}'.format(command, data)) - result = self.parse_encoding(data) - if result: - return result + try: + _, stdout, _ = ssh.exec_command(command, get_pty=True) + except paramiko.SSHException as exc: + logging.info(str(exc)) + else: + data = stdout.read() + logging.debug('{!r} => {!r}'.format(command, data)) + result = self.parse_encoding(data) + if result: + return result logging.warn('Could not detect the default ecnoding.') return 'utf-8'