configmgr/source/partial.hxx |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit c28c61e528cab4368a593b1a3c3705b0936da0e4
Author:     Stephan Bergmann <[email protected]>
AuthorDate: Sun Jul 14 15:57:02 2024 +0200
Commit:     Stephan Bergmann <[email protected]>
CommitDate: Sun Jul 14 17:32:17 2024 +0200

    Revert "boost::unordered_map to std::unordered_map in configmgr::Partial"
    
    This reverts commit 154b2040102d74aeb4c5d0cf07f1bdc90d265d52, which is known
    broken, as (unlike for boost::unordered_map) there is no guarantee that
    std::unordered_map works for incomplete value types, and indeed there is 
build
    environments that started to fail now with
    
    > In file included from /home/libo/src/core/configmgr/source/partial.cxx:23:
    > In file included from 
/usr/lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/set:60:
    > In file included from 
/usr/lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/stl_tree.h:63:
    > In file included from 
/usr/lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/stl_algobase.h:64:
    > 
/usr/lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/stl_pair.h:218:11:
 error: field has incomplete type 'configmgr::Partial::Node'
    >       _T2 second;                ///< The second member
    >           ^
    [...]
    
    Change-Id: Ie8d041bcf3d3b1b6aeede73adbaf14676250c4bf
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170467
    Reviewed-by: Noel Grandin <[email protected]>
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <[email protected]>

diff --git a/configmgr/source/partial.hxx b/configmgr/source/partial.hxx
index 5edaaf0fa03a..028fc339fae1 100644
--- a/configmgr/source/partial.hxx
+++ b/configmgr/source/partial.hxx
@@ -22,7 +22,7 @@
 #include <sal/config.h>
 
 #include <set>
-#include <unordered_map>
+#include <boost/unordered_map.hpp>
 
 #include <rtl/ustring.hxx>
 
@@ -45,7 +45,7 @@ private:
     Partial& operator=(const Partial&) = delete;
 
     struct Node {
-        typedef std::unordered_map< OUString, Node > Children;
+        typedef boost::unordered_map< OUString, Node, OUStringHash > Children;
 
         Node(): startInclude(false) {}
         void clear() { startInclude=false; children.clear(); }

Reply via email to