summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/VSDMetaData.cpp4
-rw-r--r--src/test/data/fdo86729-ms1252.vsdbin39936 -> 39936 bytes
-rw-r--r--src/test/importtest.cpp2
3 files changed, 6 insertions, 0 deletions
diff --git a/src/lib/VSDMetaData.cpp b/src/lib/VSDMetaData.cpp
index 616bdcc..ffac751 100644
--- a/src/lib/VSDMetaData.cpp
+++ b/src/lib/VSDMetaData.cpp
@@ -94,6 +94,7 @@ void libvisio::VSDMetaData::readPropertyIdentifierAndOffset(librevenge::RVNGInpu
#define VT_LPSTR 0x001E
#define PIDSI_TITLE 0x00000002
+#define PIDSI_SUBJECT 0x00000003
void libvisio::VSDMetaData::readTypedPropertyValue(librevenge::RVNGInputStream *input, uint32_t index, uint32_t offset)
{
@@ -120,6 +121,9 @@ void libvisio::VSDMetaData::readTypedPropertyValue(librevenge::RVNGInputStream *
case PIDSI_TITLE:
m_metaData.insert("dc:title", string);
break;
+ case PIDSI_SUBJECT:
+ m_metaData.insert("dc:subject", string);
+ break;
}
}
}
diff --git a/src/test/data/fdo86729-ms1252.vsd b/src/test/data/fdo86729-ms1252.vsd
index d459406..e5fb12e 100644
--- a/src/test/data/fdo86729-ms1252.vsd
+++ b/src/test/data/fdo86729-ms1252.vsd
Binary files differ
diff --git a/src/test/importtest.cpp b/src/test/importtest.cpp
index 00ee34e..b98269a 100644
--- a/src/test/importtest.cpp
+++ b/src/test/importtest.cpp
@@ -151,6 +151,8 @@ void ImportTest::testVsdMetadataTitleMs1252()
m_doc = parse("fdo86729-ms1252.vsd", m_buffer);
// Test windows-1252 -> UTF-8 conversion, provided by ICU.
assertXPath(m_doc, "/document/setDocumentMetaData", "title", "mytitle\xC3\xA9\xC3\xA1");
+
+ assertXPath(m_doc, "/document/setDocumentMetaData", "subject", "mysubject");
}
void ImportTest::testVsdMetadataTitleUtf8()