diff options
| author | Bob Jamison <ishmalius@gmail.com> | 2006-06-26 03:44:10 +0000 |
|---|---|---|
| committer | ishmal <ishmal@users.sourceforge.net> | 2006-06-26 03:44:10 +0000 |
| commit | 85d132e092461905a54263cf6ad0bdadc9a2ffdb (patch) | |
| tree | 65a11e2dda01b5fe99f5ba3c477184f68c1e028e /src/extension/internal/odf.cpp | |
| parent | Add code for printf() to allow %#s as xml-escaped string (cool, eh?) (diff) | |
| download | inkscape-85d132e092461905a54263cf6ad0bdadc9a2ffdb.tar.gz inkscape-85d132e092461905a54263cf6ad0bdadc9a2ffdb.zip | |
Add code for printf() to allow %#s as xml-escaped string (cool, eh?)
(bzr r1296)
Diffstat (limited to 'src/extension/internal/odf.cpp')
| -rw-r--r-- | src/extension/internal/odf.cpp | 37 |
1 files changed, 5 insertions, 32 deletions
diff --git a/src/extension/internal/odf.cpp b/src/extension/internal/odf.cpp index fcb9c23d2..9a8d9ecfa 100644 --- a/src/extension/internal/odf.cpp +++ b/src/extension/internal/odf.cpp @@ -928,33 +928,6 @@ static Glib::ustring formatTransform(NR::Matrix &tf) } -/** - * Encode a string, checking for XML entities, to - * make an XML string safe for output - */ -static Glib::ustring toXml(const Glib::ustring &str) -{ - Glib::ustring outbuf; - for (unsigned int i=0 ; i<str.size() ; i++) - { - XMLCh ch = (XMLCh) str[i]; - if (ch == '&') - outbuf.append("&r;"); - else if (ch == '<') - outbuf.append("<"); - else if (ch == '>') - outbuf.append(">"); - else if (ch == '"') - outbuf.append("""); - else if (ch == '\'') - outbuf.append("'"); - else - outbuf.push_back(ch); - } - return outbuf; -} - - @@ -1396,17 +1369,17 @@ bool OdfOutput::writeMeta(ZipFile &zf) outs.printf("office:version=\"1.0\">\n"); outs.printf("<office:meta>\n"); outs.printf(" <meta:generator>Inkscape.org - 0.45</meta:generator>\n"); - outs.printf(" <meta:initial-creator>%s</meta:initial-creator>\n", - toXml(creator).c_str()); - outs.printf(" <meta:creation-date>%s</meta:creation-date>\n", date.c_str()); + outs.printf(" <meta:initial-creator>%#s</meta:initial-creator>\n", + creator.c_str()); + outs.printf(" <meta:creation-date>%#s</meta:creation-date>\n", date.c_str()); for (iter = metadata.begin() ; iter != metadata.end() ; iter++) { Glib::ustring name = iter->first; Glib::ustring value = iter->second; if (name.size() > 0 && value.size()>0) { - outs.printf(" <%s>%s</%s>\n", - toXml(name).c_str(), toXml(value).c_str(), toXml(name).c_str()); + outs.printf(" <%#s>%#s</%#s>\n", + name.c_str(), value.c_str(), name.c_str()); } } outs.printf(" <meta:editing-cycles>2</meta:editing-cycles>\n"); |
