qmp: make qmp-shell work with python3
authorIgor Mammedov <imammedo@redhat.com>
Thu, 20 Jun 2019 15:40:35 +0000 (11:40 -0400)
committerEduardo Habkost <ehabkost@redhat.com>
Mon, 1 Jul 2019 22:02:10 +0000 (19:02 -0300)
python3 doesn't have raw_input(), so qmp-shell breaks.
Use input() instead and override it with raw_input()
if running on python2.

Signed-off-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <20190620154035.30989-1-imammedo@redhat.com>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
scripts/qmp/qmp-shell

index 7776c7b141f74fcf6daa101e51b935e1e8758a0b..f1cddeafbc85da74503cb5be40c47c5cd2863606 100755 (executable)
@@ -78,6 +78,9 @@ import re
 sys.path.append(os.path.join(os.path.dirname(__file__), '..', '..', 'python'))
 from qemu import qmp
 
+if sys.version_info[0] == 2:
+    input = raw_input
+
 class QMPCompleter(list):
     def complete(self, text, state):
         for cmd in self:
@@ -308,7 +311,7 @@ class QMPShell(qmp.QEMUMonitorProtocol):
         @return True if execution was ok, return False if disconnected.
         """
         try:
-            cmdline = raw_input(prompt)
+            cmdline = input(prompt)
         except EOFError:
             print()
             return False