summaryrefslogtreecommitdiff
path: root/external
diff options
context:
space:
mode:
authorXisco Fauli <xiscofauli@libreoffice.org>2024-10-22 17:22:09 +0200
committerXisco Fauli <xiscofauli@libreoffice.org>2024-10-22 23:48:27 +0200
commit0ffb4c73916321b12e7049e8f54b46ebc40a5266 (patch)
tree25e14417f3c117c66a1ab94a606c5098e9f70ba5 /external
parent95e7d7c2715b061409c84e1b7d2e1b750c47f8c7 (diff)
libvisio: upgrade to 0.1.8
Generated with: ./autogen.sh ./configure make dist-xz Change-Id: I6ff112ab2669d8ca7903f685486b5cd0f0348fd2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/175442 Tested-by: Jenkins Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
Diffstat (limited to 'external')
-rw-r--r--external/libvisio/UnpackedTarball_libvisio.mk5
-rw-r--r--external/libvisio/solid-fill-style.patch198
-rw-r--r--external/libvisio/ubsan.patch11
3 files changed, 0 insertions, 214 deletions
diff --git a/external/libvisio/UnpackedTarball_libvisio.mk b/external/libvisio/UnpackedTarball_libvisio.mk
index b5f530fb2763..b4a3d912ef63 100644
--- a/external/libvisio/UnpackedTarball_libvisio.mk
+++ b/external/libvisio/UnpackedTarball_libvisio.mk
@@ -15,9 +15,4 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,libvisio,0))
$(eval $(call gb_UnpackedTarball_update_autoconf_configs,libvisio))
-$(eval $(call gb_UnpackedTarball_add_patches,libvisio, \
- external/libvisio/ubsan.patch \
- external/libvisio/solid-fill-style.patch \
-))
-
# vim: set noet sw=4 ts=4:
diff --git a/external/libvisio/solid-fill-style.patch b/external/libvisio/solid-fill-style.patch
deleted file mode 100644
index 53dc6a405e71..000000000000
--- a/external/libvisio/solid-fill-style.patch
+++ /dev/null
@@ -1,198 +0,0 @@
---- src/lib/VSDStyles.h
-+++ src/lib/VSDStyles.h
-@@ -179,14 +177,13 @@ struct VSDFillStyle
- ASSIGN_OPTIONAL(style.qsFillMatrix, qsFillMatrix);
- if (theme)
- {
-- if (!!style.qsFillColour && style.qsFillColour.get() >= 0)
-- ASSIGN_OPTIONAL(theme->getThemeColour(style.qsFillColour.get()), fgColour);
--
-- if (!!style.qsFillColour && style.qsFillColour.get() >= 0)
-- ASSIGN_OPTIONAL(theme->getThemeColour(style.qsFillColour.get()), bgColour);
--
-- if (!!style.qsShadowColour && style.qsShadowColour.get() >= 0)
-- ASSIGN_OPTIONAL(theme->getThemeColour(style.qsShadowColour.get()), shadowFgColour);
-+ // Quick Style Colour 100 is special. It is the default,
-+ // and it is not saved explicitely in the VSDX file.
-+ ASSIGN_OPTIONAL(theme->getThemeColour(style.qsFillColour.value_or(100)), fgColour);
-+ ASSIGN_OPTIONAL(theme->getThemeColour(style.qsFillColour.value_or(100)), bgColour);
-+ ASSIGN_OPTIONAL(theme->getThemeColour(style.qsShadowColour.value_or(100)), shadowFgColour);
-+ if (!!style.qsFillMatrix && style.qsFillMatrix.get() >= 0)
-+ ASSIGN_OPTIONAL(theme->getFillStyleColour(style.qsFillMatrix.get()), fgColour);
- }
- ASSIGN_OPTIONAL(style.fgColour, fgColour);
- ASSIGN_OPTIONAL(style.bgColour, bgColour);
---- src/lib/VSDXTheme.cpp
-+++ src/lib/VSDXTheme.cpp
-@@ -63,7 +63,8 @@ libvisio::VSDXFontScheme::VSDXFontScheme()
-
- libvisio::VSDXTheme::VSDXTheme()
- : m_clrScheme(),
-- m_fontScheme()
-+ m_fontScheme(),
-+ m_fillStyleLst(std::vector<boost::optional<libvisio::Colour>>(6))
- {
- }
-
-@@ -102,6 +103,9 @@ bool libvisio::VSDXTheme::parse(librevenge::RVNGInputStream *input)
- case XML_A_FONTSCHEME:
- readFontScheme(reader.get());
- break;
-+ case XML_A_FMTSCHEME:
-+ readFmtScheme(reader.get());
-+ break;
- default:
- break;
- }
-@@ -320,7 +324,7 @@ void libvisio::VSDXTheme::readClrScheme(xmlTextReaderPtr reader)
- while ((XML_A_CLRSCHEME != tokenId || XML_READER_TYPE_END_ELEMENT != tokenType) && 1 == ret);
- }
-
--void libvisio::VSDXTheme::readThemeColour(xmlTextReaderPtr reader, int idToken, Colour &clr)
-+bool libvisio::VSDXTheme::readThemeColour(xmlTextReaderPtr reader, int idToken, Colour &clr)
- {
- int ret = 1;
- int tokenId = XML_TOKEN_INVALID;
-@@ -350,7 +354,11 @@ void libvisio::VSDXTheme::readThemeColour(xmlTextReaderPtr reader, int idToken,
- while ((idToken != tokenId || XML_READER_TYPE_END_ELEMENT != tokenType) && 1 == ret);
-
- if (colour)
-+ {
- clr = *colour;
-+ return true;
-+ }
-+ return false;
- }
-
- void libvisio::VSDXTheme::readVariationClrSchemeLst(xmlTextReaderPtr reader)
-@@ -491,4 +499,96 @@ boost::optional<libvisio::Colour> libvisio::VSDXTheme::getThemeColour(unsigned v
- return boost::optional<libvisio::Colour>();
- }
-
-+void libvisio::VSDXTheme::readFmtScheme(xmlTextReaderPtr reader)
-+{
-+ VSD_DEBUG_MSG(("VSDXTheme::readFmtScheme\n"));
-+ int ret = 1;
-+ int tokenId = XML_TOKEN_INVALID;
-+ int tokenType = -1;
-+ do
-+ {
-+ ret = xmlTextReaderRead(reader);
-+ tokenId = getElementToken(reader);
-+ if (XML_TOKEN_INVALID == tokenId)
-+ {
-+ VSD_DEBUG_MSG(("VSDXTheme::readFmtScheme: unknown token %s\n", xmlTextReaderConstName(reader)));
-+ }
-+ tokenType = xmlTextReaderNodeType(reader);
-+ switch (tokenId)
-+ {
-+ case XML_A_FILLSTYLELST:
-+ {
-+ readFillStyleLst(reader);
-+ break;
-+ }
-+ default:
-+ // Other style lists not implemented
-+ break;
-+ }
-+ } while ((XML_A_FMTSCHEME != tokenId || XML_READER_TYPE_END_ELEMENT != tokenType) && 1 == ret);
-+}
-+
-+void libvisio::VSDXTheme::skipUnimplemented(xmlTextReaderPtr reader, int idToken)
-+{
-+ int ret = 1;
-+ int tokenId = XML_TOKEN_INVALID;
-+ int tokenType = -1;
-+ do
-+ {
-+ ret = xmlTextReaderRead(reader);
-+ tokenId = getElementToken(reader);
-+ if (XML_TOKEN_INVALID == tokenId)
-+ {
-+ VSD_DEBUG_MSG(("VSDXTheme::skipUnimplemented: unknown token %s\n", xmlTextReaderConstName(reader)));
-+ }
-+ tokenType = xmlTextReaderNodeType(reader);
-+ } while ((idToken != tokenId || XML_READER_TYPE_END_ELEMENT != tokenType) && 1 == ret);
-+}
-+
-+void libvisio::VSDXTheme::readFillStyleLst(xmlTextReaderPtr reader)
-+{
-+ VSD_DEBUG_MSG(("VSDXTheme::readFillStyleLst\n"));
-+ int ret = xmlTextReaderRead(reader);
-+ int tokenId = getElementToken(reader);
-+ if (XML_TOKEN_INVALID == tokenId)
-+ {
-+ VSD_DEBUG_MSG(("VSDXTheme::readFillStyleLst: unknown token %s\n", xmlTextReaderConstName(reader)));
-+ }
-+ int tokenType = xmlTextReaderNodeType(reader);
-+ int i = 0;
-+ while ((XML_A_FILLSTYLELST != tokenId || XML_READER_TYPE_END_ELEMENT != tokenType) && 1 == ret)
-+ {
-+ switch (tokenId)
-+ {
-+ case XML_A_SOLIDFILL:
-+ {
-+ Colour colour;
-+ if (readThemeColour(reader, tokenId, colour))
-+ {
-+ m_fillStyleLst[i] = colour;
-+ }
-+ break;
-+ }
-+ default:
-+ // Skip unimplemented fill type
-+ skipUnimplemented(reader, tokenId);
-+ break;
-+ }
-+ ret = xmlTextReaderRead(reader);
-+ tokenId = getElementToken(reader);
-+ if (XML_TOKEN_INVALID == tokenId)
-+ {
-+ VSD_DEBUG_MSG(("VSDXTheme::readFillStyleLst: unknown token %s\n", xmlTextReaderConstName(reader)));
-+ }
-+ tokenType = xmlTextReaderNodeType(reader);
-+ }
-+}
-+
-+boost::optional<libvisio::Colour> libvisio::VSDXTheme::getFillStyleColour(unsigned value) const
-+{
-+ if (value == 0 || value > m_fillStyleLst.size())
-+ return boost::optional<libvisio::Colour>();
-+ return m_fillStyleLst[value - 1];
-+}
-+
- /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
---- src/lib/VSDXTheme.h
-+++ src/lib/VSDXTheme.h
-@@ -80,6 +80,7 @@ public:
- ~VSDXTheme();
- bool parse(librevenge::RVNGInputStream *input);
- boost::optional<Colour> getThemeColour(unsigned value, unsigned variationIndex = 0) const;
-+ boost::optional<Colour> getFillStyleColour(unsigned value) const;
-
- private:
- VSDXTheme(const VSDXTheme &);
-@@ -89,18 +90,22 @@ private:
- boost::optional<Colour> readSysClr(xmlTextReaderPtr reader);
-
- void readClrScheme(xmlTextReaderPtr reader);
-- void readThemeColour(xmlTextReaderPtr reader, int idToken, Colour &clr);
-+ bool readThemeColour(xmlTextReaderPtr reader, int idToken, Colour &clr);
- void readVariationClrSchemeLst(xmlTextReaderPtr reader);
- void readVariationClrScheme(xmlTextReaderPtr reader, VSDXVariationClrScheme &varClrSch);
- void readFontScheme(xmlTextReaderPtr reader);
- void readFont(xmlTextReaderPtr reader, int idToken, VSDXFont &font);
- bool readTypeFace(xmlTextReaderPtr reader, librevenge::RVNGString &typeFace);
- bool readTypeFace(xmlTextReaderPtr reader, int &script, librevenge::RVNGString &typeFace);
-+ void readFmtScheme(xmlTextReaderPtr reader);
-+ void readFillStyleLst(xmlTextReaderPtr reader);
-
- int getElementToken(xmlTextReaderPtr reader);
-+ void skipUnimplemented(xmlTextReaderPtr reader, int idToken);
-
- VSDXClrScheme m_clrScheme;
- VSDXFontScheme m_fontScheme;
-+ std::vector<boost::optional<Colour>> m_fillStyleLst;
- };
-
- } // namespace libvisio
diff --git a/external/libvisio/ubsan.patch b/external/libvisio/ubsan.patch
deleted file mode 100644
index c9ffbd98f4b6..000000000000
--- a/external/libvisio/ubsan.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/lib/VSDContentCollector.cpp
-+++ src/lib/VSDContentCollector.cpp
-@@ -3220,7 +3220,7 @@
- }
- if (U_SUCCESS(status) && conv)
- {
-- const auto *src = (const char *)&characters[0];
-+ const auto *src = (const char *)characters.data();
- const char *srcLimit = (const char *)src + characters.size();
- while (src < srcLimit)
- {