summaryrefslogtreecommitdiff
path: root/xml2po
diff options
context:
space:
mode:
authorDanilo Šegan <danilo@src.gnome.org>2005-02-23 10:40:46 +0000
committerDanilo Šegan <danilo@src.gnome.org>2005-02-23 10:40:46 +0000
commit4941022cb7a76eedb78e84ebc15888a61d35f244 (patch)
treecfe54a7a3e9221a8436863c7d6024416563d236e /xml2po
parentfb002707782509475f8b2aaebd060b7a9114de3c (diff)
downloadgnome-doc-utils-4941022cb7a76eedb78e84ebc15888a61d35f244.tar.gz
Use xmlDocParserCtxt instead in replaceNodeContentsWithText.
Diffstat (limited to 'xml2po')
-rw-r--r--xml2po/ChangeLog4
-rwxr-xr-xxml2po/xml2po.py14
2 files changed, 9 insertions, 9 deletions
diff --git a/xml2po/ChangeLog b/xml2po/ChangeLog
index 3937d87..fe5535e 100644
--- a/xml2po/ChangeLog
+++ b/xml2po/ChangeLog
@@ -1,5 +1,9 @@
2005-02-23 Danilo Šegan <dsegan@gmx.net>
+ * xml2po.py (replaceNodeContentsWithText): Use ParserCtxt instead.
+
+2005-02-23 Danilo Šegan <dsegan@gmx.net>
+
* xml2po.py (replaceNodeContentsWithText): Add DTD here as well.
2004-12-23 Danilo Šegan <dsegan@gmx.net>
diff --git a/xml2po/xml2po.py b/xml2po/xml2po.py
index 922bd7f..1cd307c 100755
--- a/xml2po/xml2po.py
+++ b/xml2po/xml2po.py
@@ -276,16 +276,12 @@ def replaceNodeContentsWithText(node,text):
"""Replaces all subnodes of a node with contents of text treated as XML."""
#print >> sys.stderr, text
if node.children:
+ tmp = '<%s>%s</%s>' % (startTagForNode(node), text, node.name)
try:
- # Lets add document DTD so entities are resolved
- dtd = node.doc.intSubset()
- tmp = dtd.serialize()
- except:
- tmp = ''
-
- tmp += '<%s>%s</%s>' % (startTagForNode(node), text, node.name)
- try:
- newnode = libxml2.parseMemory(tmp,len(tmp))
+ ctxt = libxml2.createDocParserCtxt(tmp)
+ ctxt.replaceEntities(0)
+ ctxt.parseDocument()
+ newnode = ctxt.doc()
except:
print >> sys.stderr, """Error while parsing translation as XML:\n"%s"\n""" % (text)
return