Update of /cvsroot/archetypes/PortalTransforms
In directory sc8-pr-cvs1:/tmp/cvs-serv2950
Modified Files:
MimeTypesRegistry.py
Log Message:
make unicode error handling configurable
close #810980
Index: MimeTypesRegistry.py
===================================================================
RCS file: /cvsroot/archetypes/PortalTransforms/MimeTypesRegistry.py,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- MimeTypesRegistry.py 8 Aug 2003 10:16:29 -0000 1.4
+++ MimeTypesRegistry.py 23 Sep 2003 09:26:08 -0000 1.5
@@ -40,6 +40,7 @@
# ext -> imimetype mapping
self.extensions = DictClass()
self.defaultMimetype = 'text/plain'
+ self.unicodePolicy = 'replace'
if fill:
# initialize mime types
initialize(self)
@@ -210,11 +211,15 @@
# it is
mt = self.classify(data, mimetype=mimetype, filename=filename)
- if not mt.binary and type(data) != UnicodeType:
+ if not mt.binary and not type(data) is UnicodeType:
# if no encoding specified, try to guess it from data
if encoding is None:
encoding = self.guess_encoding(data)
- data = unicode(data, encoding)
+ try:
+ data = unicode(data, encoding, self.unicodePolicy)
+ except ValueError:
+ # wrong unicodePolicy
+ data = unicode(data, encoding)
return (data, filename, mt)
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
|