[Libreoffice-commits] .: src/docdirstream.py src/docrecord.py
Miklos Vajna
vmiklos at kemper.freedesktop.org
Mon Jan 7 09:38:29 PST 2013
src/docdirstream.py | 6 ++++++
src/docrecord.py | 14 +++++++-------
2 files changed, 13 insertions(+), 7 deletions(-)
New commits:
commit 311bac96551070ba0a0d7bf93e2e9776f7ff245b
Author: Miklos Vajna <vmiklos at suse.cz>
Date: Mon Jan 7 18:38:32 2013 +0100
doc-dump xml output: quote xml attribute values
diff --git a/src/docdirstream.py b/src/docdirstream.py
index 33d065c..bc89ab1 100644
--- a/src/docdirstream.py
+++ b/src/docdirstream.py
@@ -7,6 +7,7 @@
import globals
import struct
+from xml.sax.saxutils import quoteattr
class DOCDirStream:
"""Represents one single word file subdirectory, like e.g. 'WordDocument'."""
@@ -34,6 +35,11 @@ class DOCDirStream:
else:
print '<%s value="%s"%s>' % (key, value, offstr)
+ def quoteAttr(self, value):
+ """Wrapper around xml.sax.saxutils.quoteattr, assumes the caller will put " around the result."""
+ ret = quoteattr("'"+value+"'")
+ return ret[2:len(ret)-2]
+
def getuInt8(self, bytes = None, pos = None):
if not bytes:
bytes = self.bytes
diff --git a/src/docrecord.py b/src/docrecord.py
index 8d40588..e5f29fe 100644
--- a/src/docrecord.py
+++ b/src/docrecord.py
@@ -159,7 +159,7 @@ class PlcfBkl(DOCDirStream, PLC):
end = offset + self.getuInt32(pos = pos)
print '<aCP index="%d" bookmarkEnd="%d">' % (i, end)
start = self.mainStream.plcfAtnBkf.aCP[i]
- print '<transformed value="%s"/>' % self.mainStream.retrieveText(start, end)
+ print '<transformed value="%s"/>' % self.quoteAttr(self.mainStream.retrieveText(start, end))
pos += 4
print '</aCP>'
print '</plcfBkl>'
@@ -194,7 +194,7 @@ class PlcPcd(DOCDirStream, PLC):
start, end = self.ranges[i]
print '<aCP index="%d" start="%d" end="%d">' % (i, start, end)
self.aPcd[i].dump()
- print '<transformed value="%s"/>' % self.aPcd[i].fc.getTransformedValue(start, end)
+ print '<transformed value="%s"/>' % self.quoteAttr(self.aPcd[i].fc.getTransformedValue(start, end))
print '</aCP>'
print '</plcPcd>'
@@ -254,7 +254,7 @@ class PlcfSed(DOCDirStream, PLC):
aSed = Sed(self, self.getOffset(self.pos, i))
aSed.dump()
- print '<transformed value="%s"/>' % self.mainStream.retrieveText(start, end, logical = True)
+ print '<transformed value="%s"/>' % self.quoteAttr(self.mainStream.retrieveText(start, end, logical = True))
print '</aCP>'
print '</plcSed>'
@@ -563,7 +563,7 @@ class ChpxFkp(DOCDirStream):
start = self.getuInt32(pos = pos)
end = self.getuInt32(pos = pos + 4)
print '<rgfc index="%d" start="%d" end="%d">' % (i, start, end)
- print '<transformed value="%s"/>' % self.pnFkpChpx.mainStream.retrieveText(start, end)
+ print '<transformed value="%s"/>' % self.quoteAttr(self.pnFkpChpx.mainStream.retrieveText(start, end))
pos += 4
# rgbx
@@ -592,7 +592,7 @@ class PapxFkp(DOCDirStream):
start = self.getuInt32(pos = pos)
end = self.getuInt32(pos = pos + 4)
print '<rgfc index="%d" start="%d" end="%d">' % (i, start, end)
- print '<transformed value="%s"/>' % self.mainStream.retrieveText(start, end)
+ print '<transformed value="%s"/>' % self.quoteAttr(self.mainStream.retrieveText(start, end))
pos += 4
# rgbx
@@ -707,7 +707,7 @@ class PlcfandTxt(DOCDirStream, PLC):
start = self.getuInt32(pos = pos)
end = self.getuInt32(pos = pos + 4)
print '<aCP index="%d" start="%d" end="%d">' % (i, start, end)
- print '<transformed value="%s"/>' % self.mainStream.retrieveText(offset + start, offset + end)
+ print '<transformed value="%s"/>' % self.quoteAttr(self.mainStream.retrieveText(offset + start, offset + end))
pos += 4
print '</aCP>'
print '</plcfandTxt>'
@@ -727,7 +727,7 @@ class PlcfandRef(DOCDirStream, PLC):
for i in range(self.getElements()):
start = offset + self.getuInt32(pos = pos)
print '<aCP index="%d" commentEndOffset="%d">' % (i, start)
- print '<transformed value="%s"/>' % self.mainStream.retrieveText(start, start + 1)
+ print '<transformed value="%s"/>' % self.quoteAttr(self.mainStream.retrieveText(start, start + 1))
pos += 4
# aATRDPre10
More information about the Libreoffice-commits
mailing list