[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC PATCH v3 11/11] QMP/qmp.py: set locale for exceptions
From: |
Tomoki Sekiyama |
Subject: |
[Qemu-devel] [RFC PATCH v3 11/11] QMP/qmp.py: set locale for exceptions to display non-ascii messages correctly |
Date: |
Tue, 21 May 2013 11:34:16 -0400 |
User-agent: |
StGit/0.16 |
qemu-ga in Windows may return error message with multibyte characters
when the guest OS language is set to other than English. To display such
messages correctly, this encodes the message based on the locale settings.
Signed-off-by: Tomoki Sekiyama <address@hidden>
---
QMP/qmp.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/QMP/qmp.py b/QMP/qmp.py
index c551df1..ee21819 100644
--- a/QMP/qmp.py
+++ b/QMP/qmp.py
@@ -11,6 +11,7 @@
import json
import errno
import socket
+import locale
class QMPError(Exception):
pass
@@ -133,7 +134,8 @@ class QEMUMonitorProtocol:
def command(self, cmd, **kwds):
ret = self.cmd(cmd, kwds)
if ret.has_key('error'):
- raise Exception(ret['error']['desc'])
+ enc = locale.getpreferredencoding()
+ raise Exception(ret['error']['desc'].encode(enc))
return ret['return']
def pull_event(self, wait=False):