diff options
Diffstat (limited to 'external/mdds')
-rw-r--r-- | external/mdds/Makefile | 7 | ||||
-rw-r--r-- | external/mdds/Module_mdds.mk | 16 | ||||
-rw-r--r-- | external/mdds/README | 4 | ||||
-rw-r--r-- | external/mdds/UnpackedTarball_mdds.mk | 20 | ||||
-rw-r--r-- | external/mdds/use-after-free.patch | 12 |
5 files changed, 59 insertions, 0 deletions
diff --git a/external/mdds/Makefile b/external/mdds/Makefile new file mode 100644 index 000000000..e4968cf85 --- /dev/null +++ b/external/mdds/Makefile @@ -0,0 +1,7 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- + +module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST)))) + +include $(module_directory)/../../solenv/gbuild/partial_build.mk + +# vim: set noet sw=4 ts=4: diff --git a/external/mdds/Module_mdds.mk b/external/mdds/Module_mdds.mk new file mode 100644 index 000000000..47745940b --- /dev/null +++ b/external/mdds/Module_mdds.mk @@ -0,0 +1,16 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_Module_Module,mdds)) + +$(eval $(call gb_Module_add_targets,mdds,\ + UnpackedTarball_mdds \ +)) + +# vim: set noet sw=4 ts=4: diff --git a/external/mdds/README b/external/mdds/README new file mode 100644 index 000000000..140f07bac --- /dev/null +++ b/external/mdds/README @@ -0,0 +1,4 @@ +Multi-dimensional data structure (mdds) library, available from [https://gitlab.com/mdds/mdds]. + +mdds primarily provides data structures that are used by the calc +core. diff --git a/external/mdds/UnpackedTarball_mdds.mk b/external/mdds/UnpackedTarball_mdds.mk new file mode 100644 index 000000000..271d20b0f --- /dev/null +++ b/external/mdds/UnpackedTarball_mdds.mk @@ -0,0 +1,20 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_UnpackedTarball_UnpackedTarball,mdds)) + +$(eval $(call gb_UnpackedTarball_set_tarball,mdds,$(MDDS_TARBALL))) + +$(eval $(call gb_UnpackedTarball_set_patchlevel,mdds,0)) + +$(eval $(call gb_UnpackedTarball_add_patches,mdds,\ + external/mdds/use-after-free.patch \ +)) + +# vim: set noet sw=4 ts=4: diff --git a/external/mdds/use-after-free.patch b/external/mdds/use-after-free.patch new file mode 100644 index 000000000..981c94582 --- /dev/null +++ b/external/mdds/use-after-free.patch @@ -0,0 +1,12 @@ +--- include/mdds/flat_segment_tree_def.inl ++++ include/mdds/flat_segment_tree_def.inl +@@ -84,8 +84,8 @@ + // Move on to the next destination node, and have the next node point + // back to the previous node. + node_ptr old_node = dest_node; ++ dest_node->next->prev = old_node; + dest_node = dest_node->next; +- dest_node->prev = old_node; + + if (src_node == r.m_right_leaf.get()) + { |