[Yum-devel] [PATCH 2/2] Don't re-import saxutils for each call to to_xml().

James Antill james at and.org
Wed Jun 2 20:32:15 UTC 2010


---
 yum/misc.py |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/yum/misc.py b/yum/misc.py
index b565ab1..09e4dd6 100644
--- a/yum/misc.py
+++ b/yum/misc.py
@@ -870,15 +870,20 @@ def _ugly_utf8_string_hack(item):
             newitem = newitem + char
     return newitem
 
+__cached_saxutils = None
 def to_xml(item, attrib=False):
-    import xml.sax.saxutils
+    global __cached_saxutils
+    if __cached_saxutils is None:
+        import xml.sax.saxutils
+        __cached_saxutils = xml.sax.saxutils
+
     item = _ugly_utf8_string_hack(item)
     item = to_utf8(item)
     item = item.rstrip()
     if attrib:
-        item = xml.sax.saxutils.escape(item, entities={'"':"""})
+        item = __cached_saxutils.escape(item, entities={'"':"""})
     else:
-        item = xml.sax.saxutils.escape(item)
+        item = __cached_saxutils.escape(item)
     return item
 
 def unlink_f(filename):
-- 
1.7.0.1



More information about the Yum-devel mailing list