summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFridrich Štrba <fridrich.strba@bluewin.ch>2016-01-15 12:03:21 +0100
committerFridrich Štrba <fridrich.strba@bluewin.ch>2016-01-15 12:03:21 +0100
commit49e7e5482d979866ac92981af0cf83d09610bc80 (patch)
treede7abb4a227ad2f43d6610de5ea0fd24c264c0ca
parent683bfbe077060b4b9321ccb08004e487b2c05ace (diff)
Consider stencil txtxform in binary formats (fixes tdf#67914)
Change-Id: I45de3aab09de8320999476fb91814f048274a905
-rw-r--r--src/lib/VSDContentCollector.cpp7
-rw-r--r--src/lib/VSDParser.cpp3
2 files changed, 10 insertions, 0 deletions
diff --git a/src/lib/VSDContentCollector.cpp b/src/lib/VSDContentCollector.cpp
index 3018b89..e65359d 100644
--- a/src/lib/VSDContentCollector.cpp
+++ b/src/lib/VSDContentCollector.cpp
@@ -2253,6 +2253,13 @@ void libvisio::VSDContentCollector::collectShape(unsigned id, unsigned level, un
m_stencilNames[iterData->first] = nameString;
}
+ if (m_stencilShape->m_txtxform)
+ {
+ if (m_txtxform)
+ delete m_txtxform;
+ m_txtxform = new XForm(*(m_stencilShape->m_txtxform));
+ }
+
m_stencilFields = m_stencilShape->m_fields;
for (unsigned i = 0; i < m_stencilFields.size(); i++)
{
diff --git a/src/lib/VSDParser.cpp b/src/lib/VSDParser.cpp
index e82a678..fd85a2c 100644
--- a/src/lib/VSDParser.cpp
+++ b/src/lib/VSDParser.cpp
@@ -1280,6 +1280,9 @@ void libvisio::VSDParser::readShape(librevenge::RVNGInputStream *input)
{
if (tmpShape->m_foreign)
m_shape.m_foreign = new ForeignData(*(tmpShape->m_foreign));
+ m_shape.m_xform = tmpShape->m_xform;
+ if (tmpShape->m_txtxform)
+ m_shape.m_txtxform = new XForm(*(tmpShape->m_txtxform));
m_shape.m_tabSets = tmpShape->m_tabSets;
m_shape.m_text = tmpShape->m_text;
m_shape.m_textFormat = tmpShape->m_textFormat;