From 6a9f70948fcdf2af6ae1ed755811a145fd6eafe0 Mon Sep 17 00:00:00 2001 From: Benny Malengier Date: Thu, 3 Jan 2008 15:25:17 +0000 Subject: [PATCH] * src/GrampsDb/_WriteXML.py: wrong escape of &, bug 1430 2008-01-03 Benny Malengier svn: r9701 --- ChangeLog | 3 +++ src/GrampsDb/_WriteXML.py | 13 +++++++++++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7b752daf1..71959a075 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,6 @@ +2008-01-03 Benny Malengier + * src/GrampsDb/_WriteXML.py: wrong escape of &, bug 1430 + 2008-01-03 Benny Malengier * src/plugins/RelCalc.py: managed window error, bug 1499 diff --git a/src/GrampsDb/_WriteXML.py b/src/GrampsDb/_WriteXML.py index 0bcad1749..4922f2ebc 100644 --- a/src/GrampsDb/_WriteXML.py +++ b/src/GrampsDb/_WriteXML.py @@ -726,6 +726,15 @@ class XmlWriter(UpdateCallback): self.g.write('%s<%s>%s\n' % (' '*indent,tagname,self.fix(value),tagname)) + def write_line_nofix(self,tagname,value,indent=1): + '''Writes a line, but does not escape characters. + Use this instead of write_line is the value is already fixed, + this avoids & becoming &amp; + ''' + if value: + self.g.write('%s<%s>%s\n' % + (' '*indent, tagname, value, tagname)) + def get_iso_date(self,date): if date[2] == 0: y = "????" @@ -1024,8 +1033,8 @@ class XmlWriter(UpdateCallback): note = place.get_note() if title == "": - title = self.fix(self.build_place_title(place.get_main_location())) - self.write_line("ptitle",title,index+1) + title = self.build_place_title(place.get_main_location()) + self.write_line_nofix("ptitle",title,index+1) if longitude or lat: self.g.write('%s\n'