scripts/qmp-shell: fix shell history exception handling
We want to remove exceptions that are too broad here; we only want to catch IOErrors that get raised as a direct result of the open call. Signed-off-by: John Snow <jsnow@redhat.com> Message-id: 20210607200649.1840382-15-jsnow@redhat.com Signed-off-by: John Snow <jsnow@redhat.com>
This commit is contained in:
parent
628b92dd67
commit
d962ec85ed
@ -67,7 +67,6 @@
|
||||
|
||||
import ast
|
||||
import atexit
|
||||
import errno
|
||||
import json
|
||||
import os
|
||||
import re
|
||||
@ -143,19 +142,17 @@ class QMPShell(qmp.QEMUMonitorProtocol):
|
||||
readline.set_completer_delims('')
|
||||
try:
|
||||
readline.read_history_file(self._histfile)
|
||||
except Exception as e:
|
||||
if isinstance(e, IOError) and e.errno == errno.ENOENT:
|
||||
# File not found. No problem.
|
||||
pass
|
||||
else:
|
||||
print("Failed to read history '%s'; %s" % (self._histfile, e))
|
||||
except FileNotFoundError:
|
||||
pass
|
||||
except IOError as err:
|
||||
print(f"Failed to read history '{self._histfile}': {err!s}")
|
||||
atexit.register(self.__save_history)
|
||||
|
||||
def __save_history(self):
|
||||
try:
|
||||
readline.write_history_file(self._histfile)
|
||||
except Exception as e:
|
||||
print("Failed to save history file '%s'; %s" % (self._histfile, e))
|
||||
except IOError as err:
|
||||
print(f"Failed to save history file '{self._histfile}': {err!s}")
|
||||
|
||||
@classmethod
|
||||
def __parse_value(cls, val):
|
||||
|
Loading…
Reference in New Issue
Block a user