summaryrefslogtreecommitdiff
path: root/external/libvisio
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2015-12-27 21:18:30 +0100
committerStephan Bergmann <sbergman@redhat.com>2015-12-27 21:19:04 +0100
commit60a51eaf486d53491c1ce8723e3f5fb901b66515 (patch)
tree1f08c27a6476810be18400ba6601e4a1547b9557 /external/libvisio
parent932c74e38ca397d82d609831e79ceaef2183cf64 (diff)
external/libvisio: Avoid undefined behavior
Change-Id: Ia86ebe7cd48de3f42dd95a11be7926f1e83d9113
Diffstat (limited to 'external/libvisio')
-rw-r--r--external/libvisio/ubsan.patch9
1 files changed, 9 insertions, 0 deletions
diff --git a/external/libvisio/ubsan.patch b/external/libvisio/ubsan.patch
index d80f7ebe5bbe..ec67b5c9cd4a 100644
--- a/external/libvisio/ubsan.patch
+++ b/external/libvisio/ubsan.patch
@@ -1,5 +1,14 @@
--- src/lib/VSDContentCollector.cpp
+++ src/lib/VSDContentCollector.cpp
+@@ -3220,7 +3220,7 @@
+ }
+ if (U_SUCCESS(status) && conv)
+ {
+- const char *src = (const char *)&characters[0];
++ const char *src = (const char *)characters.data();
+ const char *srcLimit = (const char *)src + characters.size();
+ while (src < srcLimit)
+ {
@@ -3285,6 +3285,7 @@
_handleLevelChange(level);
librevenge::RVNGString text;