[Server-devel] [PATCH] Fix to handle UTF-8 metadata

martin.langhoff at gmail.com martin.langhoff at gmail.com
Mon Jun 16 13:46:29 EDT 2008


From: Martin Langhoff <martin at laptop.org>

---
 ds_backup.py |    7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/ds_backup.py b/ds_backup.py
index 7d8d4c9..c04f491 100755
--- a/ds_backup.py
+++ b/ds_backup.py
@@ -50,9 +50,7 @@ class BulkRestoreUnavailable(BackupError): pass
 def _sanitize_dbus_dict(dbus_dict):
     base_dict = {}
     for key, value in dbus_dict.iteritems():
-        key = str(key)
-        value = str(value)
-        base_dict[key] = value
+        base_dict[unicode(key)] = unicode(value)
     return base_dict
 
 def write_metadata(ds_path):
@@ -83,7 +81,8 @@ def write_metadata(ds_path):
         for prop in drop_properties:
             if prop in entry:
                 del entry[prop]
-        md_fh.write(json.write(_sanitize_dbus_dict(entry))+'\n')
+        var = json.write(_sanitize_dbus_dict(entry))+'\n'
+        md_fh.write(var.encode('utf-8'))
     md_fh.close()
 
     os.rename(md_tmppath, md_path)
-- 
1.5.4.34.g053d9



More information about the Server-devel mailing list