]> granicus.if.org Git - python/commitdiff
approximately double dump performance by moving import of cgi.escape back to
authorSkip Montanaro <skip@pobox.com>
Mon, 1 Oct 2001 17:50:29 +0000 (17:50 +0000)
committerSkip Montanaro <skip@pobox.com>
Mon, 1 Oct 2001 17:50:29 +0000 (17:50 +0000)
top level.

Lib/xmlrpclib.py

index ea4f9323a9ce715b9782bbd0b621dd44e6a502b4..37c9429da41444784b9ba292fc33a2abf57d9477 100644 (file)
@@ -136,6 +136,7 @@ Exported functions:
 
 import re, string, time, operator
 from types import *
+from cgi import escape as _escape
 
 try:
     unicode
@@ -472,15 +473,13 @@ class Marshaller:
     dispatch[FloatType] = dump_double
 
     def dump_string(self, value):
-        from cgi import escape
-        self.write("<value><string>%s</string></value>\n" % escape(value))
+        self.write("<value><string>%s</string></value>\n" % _escape(value))
     dispatch[StringType] = dump_string
 
     if unicode:
         def dump_unicode(self, value):
             value = value.encode(self.encoding)
-            from cgi import escape
-            self.write("<value><string>%s</string></value>\n" % escape(value))
+            self.write("<value><string>%s</string></value>\n" % _escape(value))
         dispatch[UnicodeType] = dump_unicode
 
     def container(self, value):
@@ -513,8 +512,7 @@ class Marshaller:
             write("<member>\n")
             if type(k) is not StringType:
                 raise TypeError, "dictionary key must be string"
-            from cgi import escape
-            write("<name>%s</name>\n" % escape(k))
+            write("<name>%s</name>\n" % _escape(k))
             self.__dump(v)
             write("</member>\n")
         write("</struct></value>\n")