diff options
author | Jan Kiszka <jan.kiszka@siemens.com> | 2010-06-16 00:38:46 +0200 |
---|---|---|
committer | Luiz Capitulino <lcapitulino@redhat.com> | 2010-07-01 14:27:13 -0300 |
commit | bbafc7a8798bc9ed1380e75033544e0614d344c7 (patch) | |
tree | 1c52f19c932b940d4d6606c73458c098054a4517 /QMP | |
parent | 8d7e84571bd3f44c106ed12cb316b1ca30915fc7 (diff) |
QMP: Fix python helper /wrt long return strings
Remove the arbitrary limitation of 1024 characters per return string and
read complete lines instead. Required for device_show.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Diffstat (limited to 'QMP')
-rw-r--r-- | QMP/qmp.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/QMP/qmp.py b/QMP/qmp.py index d9da603be..4062f84f3 100644 --- a/QMP/qmp.py +++ b/QMP/qmp.py @@ -63,10 +63,14 @@ class QEMUMonitorProtocol: def __json_read(self): try: - return json.loads(self.sock.recv(1024)) + while True: + line = json.loads(self.sockfile.readline()) + if not 'event' in line: + return line except ValueError: return def __init__(self, filename): self.filename = filename self.sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) + self.sockfile = self.sock.makefile() |