qmp: make qmp-shell work with python3

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>
This commit is contained in:
Igor Mammedov 2019-06-20 11:40:35 -04:00 committed by Eduardo Habkost
parent 7d0e02405f
commit 08aa87f5e7

View File

@ -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