From 482eff5d7e22db9b3cca0e89837e6dc9b3bde431 Mon Sep 17 00:00:00 2001
From: Christian Mazakas
Date: Wed, 23 Aug 2023 11:28:35 -0700
Subject: [PATCH] Add Unordered patch for 1.83.0
---
feed/history/boost_1_83_0.qbk | 4 ++++
.../1_83_0/0001-unordered-fix-copy-assign.patch | 16 ++++++++++++++++
patches/index.html | 6 ++++++
3 files changed, 26 insertions(+)
create mode 100644 patches/1_83_0/0001-unordered-fix-copy-assign.patch
diff --git a/feed/history/boost_1_83_0.qbk b/feed/history/boost_1_83_0.qbk
index 2c8120bd..9070d3b4 100644
--- a/feed/history/boost_1_83_0.qbk
+++ b/feed/history/boost_1_83_0.qbk
@@ -28,6 +28,10 @@ in the release.
* Compilation on Windows ARM platforms may fail for missing intrinsics, see [github json 926] and [github json 927].
[@https://github.com/boostorg/json/commit/c4ce8509d015a0b75cfa9d36609b8409821a9c86.patch Patch].
+* Unordered
+ * Fix erroneous copy assigment operator that would destroy non-existent elements, see [github unordered 205].
+ [@patches/1_83_0/0001-unordered-fix-copy-assign.patch Patch].
+
[endsect]
[section New Libraries]
diff --git a/patches/1_83_0/0001-unordered-fix-copy-assign.patch b/patches/1_83_0/0001-unordered-fix-copy-assign.patch
new file mode 100644
index 00000000..809197f8
--- /dev/null
+++ b/patches/1_83_0/0001-unordered-fix-copy-assign.patch
@@ -0,0 +1,16 @@
+diff --git a/include/boost/unordered/detail/foa/core.hpp b/include/boost/unordered/detail/foa/core.hpp
+index 239d05d3..7ae9f2c8 100644
+--- a/include/boost/unordered/detail/foa/core.hpp
++++ b/include/boost/unordered/detail/foa/core.hpp
+@@ -1870,9 +1870,10 @@ private:
+
+ void fast_copy_elements_from(const table_core& x)
+ {
+- if(arrays.elements){
++ if(arrays.elements&&x.arrays.elements){
+ copy_elements_array_from(x);
+ copy_groups_array_from(x);
++ size_ctrl.ml=std::size_t(x.size_ctrl.ml);
+ size_ctrl.size=std::size_t(x.size_ctrl.size);
+ }
+ }
diff --git a/patches/index.html b/patches/index.html
index 46118aed..27102e17 100644
--- a/patches/index.html
+++ b/patches/index.html
@@ -33,6 +33,12 @@ https://www.boost.org/development/website_updating.html
late to be fixed in the release. Be careful as they have
not been through the normal testing process.
+ 1.83.0
+
+
+
1.82.0