[Bug #841757] Patch from /F to allow Unicode strings as struct keys

This commit is contained in:
Andrew M. Kuchling 2004-06-05 12:35:58 +00:00
parent b12d97c275
commit 5962f457b4

View file

@ -688,12 +688,15 @@ def dump_struct(self, value, write, escape=escape):
self.memo[i] = None
dump = self.__dump
write("<value><struct>\n")
for k in value.keys():
for k, v in value.items():
write("<member>\n")
if type(k) is not StringType:
raise TypeError, "dictionary key must be string"
if unicode and type(k) is UnicodeType:
k = k.encode(self.encoding)
else:
raise TypeError, "dictionary key must be string"
write("<name>%s</name>\n" % escape(k))
dump(value[k], write)
dump(v, write)
write("</member>\n")
write("</struct></value>\n")
del self.memo[i]