Instead of doing this in main, move it into the class.
Signed-off-by: John Snow <[email protected]>
---
scripts/qmp/qmp-shell | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/scripts/qmp/qmp-shell b/scripts/qmp/qmp-shell
index 31269859c4c4..aa148517a864 100755
--- a/scripts/qmp/qmp-shell
+++ b/scripts/qmp/qmp-shell
@@ -318,6 +318,12 @@ class QMPShell(qmp.QEMUMonitorProtocol):
return self._execute_cmd(cmdline)
+ def repl(self):
+ self.show_banner()
+ while self.read_exec_command():
+ yield
+ self.close()
+
class HMPShell(QMPShell):
def __init__(self, address, pretty=False, verbose=False):
@@ -435,10 +441,8 @@ def main():
except OSError as err:
die(f"Couldn't connect to {args.qmp_server}: {err!s}")
- qemu.show_banner()
- while qemu.read_exec_command():
+ for _ in qemu.repl():
pass
- qemu.close()
if __name__ == '__main__':
--
2.26.2