passenger 6.2.1 → 6.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG +37 -15
- data/build/cxx_tests.rb +2 -0
- data/build/support/cxx_dependency_map.rb +3 -63
- data/src/agent/Core/Config.h +1 -1
- data/src/agent/Core/Controller/Config.h +1 -1
- data/src/agent/Shared/ApiServerUtils.h +1 -1
- data/src/agent/Watchdog/Config.h +1 -1
- data/src/apache2_module/Hooks.cpp +13 -0
- data/src/apache2_module/Utils.h +14 -0
- data/src/cxx_supportlib/Constants.h +1 -1
- data/src/cxx_supportlib/FileTools/FileManip.cpp +27 -3
- data/src/cxx_supportlib/InstanceDirectory.h +30 -3
- data/src/cxx_supportlib/ServerKit/Errors.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpHeaderParser.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpHeaderParserState.h +1 -1
- data/src/cxx_supportlib/ServerKit/HttpRequest.h +1 -1
- data/src/cxx_supportlib/ServerKit/llerrors.h +3 -3
- data/src/cxx_supportlib/ServerKit/llversion.h +1 -1
- data/src/cxx_supportlib/{ServerKit/llhttp_api.c → vendor-copy/llhttp/api.c} +30 -23
- data/src/cxx_supportlib/{ServerKit → vendor-copy/llhttp}/llhttp.c +1756 -1645
- data/src/cxx_supportlib/{ServerKit → vendor-copy/llhttp}/llhttp.h +35 -13
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/classification.hpp +19 -0
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/formatter.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/algorithm/string/trim_all.hpp +0 -2
- data/src/cxx_supportlib/vendor-modified/boost/assert.hpp +20 -13
- data/src/cxx_supportlib/vendor-modified/boost/atomic/detail/core_arch_ops_gcc_x86.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/atomic/thread_pause.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/bind/mem_fn.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/circular_buffer/debug.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx03.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx11.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx14.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx17.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx20.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/assert_cxx23.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/auto_link.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/clang_version.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/compiler/visualc.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/config/detail/cxx_composite.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/config/workaround.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/adaptive_pool.hpp +57 -53
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator.hpp +10 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/allocator_traits.hpp +34 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/container_fwd.hpp +14 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/deque.hpp +176 -2287
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool.hpp +13 -9
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/adaptive_node_pool_impl.hpp +186 -70
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/algorithm.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/aligned_allocation.hpp +149 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_helpers.hpp +35 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/alloc_lib.h +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/bit_utilities.hpp +133 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/compare_functors.hpp +18 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_begin.hpp +5 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/config_end.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/container_rebind.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/copy_move_algo.hpp +20 -10
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/deque_impl.hpp +2744 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dispatch_uses_allocator.hpp +202 -104
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/dlmalloc.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/flat_tree.hpp +161 -85
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/is_constructible.hpp +180 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/iterators.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/math_functions.hpp +12 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mpl.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/mutex.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/next_capacity.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool.hpp +18 -14
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/node_pool_impl.hpp +256 -41
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/operator_new_helpers.hpp +75 -24
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pair.hpp +1 -56
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/placement_new.hpp +16 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/pool_common_alloc.hpp +1 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/range_utils.hpp +196 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/std_fwd.hpp +33 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/tree.hpp +124 -69
- data/src/cxx_supportlib/vendor-modified/boost/container/detail/workaround.hpp +109 -7
- data/src/cxx_supportlib/vendor-modified/boost/container/devector.hpp +168 -162
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/nest.hpp +2978 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/pmr/nest.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_all_of.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_any_of.hpp +42 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy.hpp +229 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy_if.hpp +270 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_copy_n.hpp +308 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_count.hpp +101 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_count_if.hpp +100 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_equal.hpp +268 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_fill.hpp +101 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_fill_n.hpp +171 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find.hpp +110 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_if.hpp +110 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_if_not.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last.hpp +179 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last_if.hpp +179 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_find_last_if_not.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_for_each.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_generate.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_generate_n.hpp +162 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_partitioned.hpp +46 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_sorted.hpp +49 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_is_sorted_until.hpp +169 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_iterator_traits.hpp +382 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_merge.hpp +428 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_mismatch.hpp +350 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_none_of.hpp +98 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition.hpp +296 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition_copy.hpp +105 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_partition_point.hpp +116 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_copy.hpp +207 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_copy_if.hpp +223 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_remove_if.hpp +57 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_replace.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_replace_if.hpp +90 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_reverse.hpp +245 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_reverse_copy.hpp +229 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_search.hpp +211 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_search_n.hpp +476 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_difference.hpp +300 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_intersection.hpp +287 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_symmetric_difference.hpp +306 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_set_union.hpp +294 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_stable_partition.hpp +153 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_swap_ranges.hpp +92 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/segmented_transform.hpp +93 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/experimental/wrapped_iterator.hpp +142 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_map.hpp +642 -417
- data/src/cxx_supportlib/vendor-modified/boost/container/flat_set.hpp +141 -30
- data/src/cxx_supportlib/vendor-modified/boost/container/hub.hpp +2426 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/list.hpp +65 -57
- data/src/cxx_supportlib/vendor-modified/boost/container/map.hpp +247 -68
- data/src/cxx_supportlib/vendor-modified/boost/container/new_allocator.hpp +7 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/node_allocator.hpp +39 -33
- data/src/cxx_supportlib/vendor-modified/boost/container/options.hpp +156 -23
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/global_resource.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/hub.hpp +43 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/memory_resource.hpp +5 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/monotonic_buffer_resource.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/polymorphic_allocator.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/resource_adaptor.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/pmr/segtor.hpp +45 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/scoped_allocator.hpp +5 -4
- data/src/cxx_supportlib/vendor-modified/boost/container/segtor.hpp +905 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/set.hpp +148 -35
- data/src/cxx_supportlib/vendor-modified/boost/container/slist.hpp +59 -52
- data/src/cxx_supportlib/vendor-modified/boost/container/small_vector.hpp +632 -5
- data/src/cxx_supportlib/vendor-modified/boost/container/stable_vector.hpp +66 -60
- data/src/cxx_supportlib/vendor-modified/boost/container/static_vector.hpp +46 -1
- data/src/cxx_supportlib/vendor-modified/boost/container/string.hpp +612 -317
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator.hpp +54 -111
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator_construction.hpp +100 -0
- data/src/cxx_supportlib/vendor-modified/boost/container/uses_allocator_fwd.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/container/vector.hpp +233 -116
- data/src/cxx_supportlib/vendor-modified/boost/container_hash/hash.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/core/lightweight_test.hpp +17 -10
- data/src/cxx_supportlib/vendor-modified/boost/date_time/period.hpp +1 -3
- data/src/cxx_supportlib/vendor-modified/boost/describe/detail/config.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/encoder.hpp +114 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/error_info_impl.hpp +4 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/requires_cxx11.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/detail/type_info.hpp +211 -1
- data/src/cxx_supportlib/vendor-modified/boost/exception/diagnostic_information.hpp +59 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/exception.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/exception/info.hpp +34 -0
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/avltree.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/bstree.hpp +12 -3
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/derivation_value_traits.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/ebo_functor_holder.hpp +29 -174
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/generic_hook.hpp +18 -2
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/key_nodeptr_comp.hpp +0 -1
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/detail/workaround.hpp +4 -5
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/hashtable.hpp +20 -11
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/list.hpp +42 -14
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/slist.hpp +58 -22
- data/src/cxx_supportlib/vendor-modified/boost/intrusive/unordered_set.hpp +3 -1
- data/src/cxx_supportlib/vendor-modified/boost/iterator/advance.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/iterator/distance.hpp +8 -2
- data/src/cxx_supportlib/vendor-modified/boost/iterator/is_iterator.hpp +9 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/bad_lexical_cast.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/buffer_view.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/config.hpp +22 -0
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical.hpp +15 -7
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_lexical_streams.hpp +23 -11
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/converter_numeric.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/inf_nan.hpp +9 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/is_character.hpp +11 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_basic_unlockedbuf.hpp +10 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_char_constants.hpp +8 -1
- data/src/cxx_supportlib/vendor-modified/boost/{detail → lexical_cast/detail}/lcast_precision.hpp +13 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/lcast_unsigned_converters.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/detail/widest_char.hpp +10 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast/try_lexical_convert.hpp +15 -2
- data/src/cxx_supportlib/vendor-modified/boost/lexical_cast.hpp +11 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/once_atomic.cpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/libs/thread/src/pthread/thread.cpp +48 -46
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/meta_utils.hpp +23 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/move_helpers.hpp +24 -24
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/nsec_clock.hpp +12 -4
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/type_traits.hpp +76 -0
- data/src/cxx_supportlib/vendor-modified/boost/move/detail/workaround.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/move/traits.hpp +11 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/algorithm.hpp +58 -37
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_copy_if.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_map_find.hpp +17 -9
- data/src/cxx_supportlib/vendor-modified/boost/mp11/detail/mp_remove_if.hpp +1 -2
- data/src/cxx_supportlib/vendor-modified/boost/mp11/integer_sequence.hpp +6 -0
- data/src/cxx_supportlib/vendor-modified/boost/mp11/version.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/none_t.hpp +6 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_common_defs.hpp +188 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_factory_support.hpp +0 -6
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_hash.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_nonmember_interface.hpp +117 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_reference_spec.hpp +108 -83
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_relops.hpp +39 -39
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_select_implementation.hpp +37 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_swap.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_trivially_copyable_base.hpp +8 -8
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/union_optional.hpp +724 -0
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional.hpp +93 -220
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional_fwd.hpp +14 -4
- data/src/cxx_supportlib/vendor-modified/boost/optional/optional_io.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/binomial_distribution.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/random/uniform_int_distribution.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/rational.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/static_assert.hpp +4 -6
- data/src/cxx_supportlib/vendor-modified/boost/system/api_config.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/config.hpp +16 -0
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category.hpp +13 -13
- data/src/cxx_supportlib/vendor-modified/boost/system/detail/error_category_impl.hpp +5 -5
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_deque_base.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_queue_base.hpp +3 -2
- data/src/cxx_supportlib/vendor-modified/boost/thread/detail/thread.hpp +2 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/experimental/parallel/v2/task_region.hpp +1 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/future.hpp +30 -28
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/once.hpp +6 -3
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/once_atomic.hpp +5 -1
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/pthread_helpers.hpp +1 -0
- data/src/cxx_supportlib/vendor-modified/boost/thread/pthread/shared_mutex.hpp +16 -16
- data/src/cxx_supportlib/vendor-modified/boost/thread/v2/shared_mutex.hpp +26 -26
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_map.hpp +196 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_flat_set.hpp +191 -6
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_node_map.hpp +196 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/concurrent_node_set.hpp +192 -5
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/concurrent_table.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/core.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/foa/table.hpp +3 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/implementation.hpp +52 -16
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/ranges_support.hpp +104 -0
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/type_traits.hpp +1 -14
- data/src/cxx_supportlib/vendor-modified/boost/unordered/detail/unordered_printers.hpp +10 -4
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_map.hpp +121 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_flat_set.hpp +118 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_map.hpp +338 -1
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_map.hpp +121 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_node_set.hpp +118 -3
- data/src/cxx_supportlib/vendor-modified/boost/unordered/unordered_set.hpp +333 -1
- data/src/cxx_supportlib/vendor-modified/boost/version.hpp +2 -2
- data/src/cxx_supportlib/vendor-modified/jsoncpp/json-forwards.h +276 -143
- data/src/cxx_supportlib/vendor-modified/jsoncpp/json.h +1262 -771
- data/src/cxx_supportlib/vendor-modified/jsoncpp/jsoncpp.cpp +1704 -1586
- data/src/nginx_module/ContentHandler.c +35 -0
- data/src/ruby_supportlib/phusion_passenger/common_library.rb +6 -6
- data/src/ruby_supportlib/phusion_passenger/utils/json.rb +25 -2
- data/src/ruby_supportlib/phusion_passenger/vendor/daemon_controller.rb +12 -1
- data/src/ruby_supportlib/phusion_passenger.rb +1 -1
- metadata +73 -8
- data/src/cxx_supportlib/vendor-modified/boost/optional/detail/optional_utility.hpp +0 -41
- /data/src/cxx_supportlib/{ServerKit/llhttp_http.c → vendor-copy/llhttp/http.c} +0 -0
|
@@ -902,7 +902,7 @@ BOOST_CXX14_CONSTEXPR void rational<IntType>::normalize()
|
|
|
902
902
|
num /= g;
|
|
903
903
|
den /= g;
|
|
904
904
|
|
|
905
|
-
if (den < -(std::numeric_limits<IntType>::max)()) {
|
|
905
|
+
if (std::numeric_limits<IntType>::is_bounded && den < -(std::numeric_limits<IntType>::max)()) {
|
|
906
906
|
BOOST_THROW_EXCEPTION(bad_rational("bad rational: non-zero singular denominator"));
|
|
907
907
|
}
|
|
908
908
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// (C) Copyright John Maddock 2000.
|
|
2
|
-
// Use, modification and distribution are subject to the
|
|
3
|
-
// Boost Software License, Version 1.0. (See accompanying file
|
|
2
|
+
// Use, modification and distribution are subject to the
|
|
3
|
+
// Boost Software License, Version 1.0. (See accompanying file
|
|
4
4
|
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
|
5
5
|
|
|
6
6
|
// See http://www.boost.org/libs/static_assert for documentation.
|
|
@@ -121,13 +121,13 @@ template<std::size_t x> struct static_assert_test{};
|
|
|
121
121
|
sizeof(::boost::STATIC_ASSERTION_FAILURE< BOOST_STATIC_ASSERT_BOOL_CAST (__VA_ARGS__) >)>\
|
|
122
122
|
BOOST_JOIN(boost_static_assert_typedef_, __COUNTER__)
|
|
123
123
|
#elif (defined(BOOST_INTEL_CXX_VERSION) || defined(BOOST_SA_GCC_WORKAROUND)) && defined(BOOST_NO_CXX11_VARIADIC_MACROS)
|
|
124
|
-
// agurt 15/sep/02: a special care is needed to force Intel C++ issue an error
|
|
124
|
+
// agurt 15/sep/02: a special care is needed to force Intel C++ issue an error
|
|
125
125
|
// instead of warning in case of failure
|
|
126
126
|
# define BOOST_STATIC_ASSERT( B ) \
|
|
127
127
|
typedef char BOOST_JOIN(boost_static_assert_typedef_, __LINE__) \
|
|
128
128
|
[ ::boost::STATIC_ASSERTION_FAILURE< BOOST_STATIC_ASSERT_BOOL_CAST( B ) >::value ]
|
|
129
129
|
#elif (defined(BOOST_INTEL_CXX_VERSION) || defined(BOOST_SA_GCC_WORKAROUND)) && !defined(BOOST_NO_CXX11_VARIADIC_MACROS)
|
|
130
|
-
// agurt 15/sep/02: a special care is needed to force Intel C++ issue an error
|
|
130
|
+
// agurt 15/sep/02: a special care is needed to force Intel C++ issue an error
|
|
131
131
|
// instead of warning in case of failure
|
|
132
132
|
# define BOOST_STATIC_ASSERT(...) \
|
|
133
133
|
typedef char BOOST_JOIN(boost_static_assert_typedef_, __LINE__) \
|
|
@@ -177,5 +177,3 @@ template<std::size_t x> struct static_assert_test{};
|
|
|
177
177
|
#endif // defined(BOOST_NO_CXX11_STATIC_ASSERT)
|
|
178
178
|
|
|
179
179
|
#endif // BOOST_STATIC_ASSERT_HPP
|
|
180
|
-
|
|
181
|
-
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
// Standalone MinGW and all other known Windows compilers do predefine _WIN32
|
|
34
34
|
// Compilers that predefine _WIN32 or __MINGW32__ do so for Windows 64-bit builds too.
|
|
35
35
|
|
|
36
|
-
# if defined(_WIN32)
|
|
36
|
+
# if defined(_WIN32) // Windows default, including MinGW
|
|
37
37
|
# define BOOST_WINDOWS_API
|
|
38
38
|
# else
|
|
39
39
|
# define BOOST_POSIX_API
|
|
@@ -38,6 +38,22 @@
|
|
|
38
38
|
# define BOOST_SYSTEM_CONSTEXPR
|
|
39
39
|
#endif
|
|
40
40
|
|
|
41
|
+
// BOOST_SYSTEM_HAS_CXX20_CONSTEXPR
|
|
42
|
+
|
|
43
|
+
#if defined(__cpp_constexpr) && __cpp_constexpr >= 201907L
|
|
44
|
+
# define BOOST_SYSTEM_HAS_CXX20_CONSTEXPR
|
|
45
|
+
#endif
|
|
46
|
+
|
|
47
|
+
#if BOOST_WORKAROUND(BOOST_CLANG_VERSION, < 110000)
|
|
48
|
+
# undef BOOST_SYSTEM_HAS_CXX20_CONSTEXPR
|
|
49
|
+
#endif
|
|
50
|
+
|
|
51
|
+
#if defined(BOOST_SYSTEM_HAS_CXX20_CONSTEXPR)
|
|
52
|
+
# define BOOST_SYSTEM_CXX20_CONSTEXPR constexpr
|
|
53
|
+
#else
|
|
54
|
+
# define BOOST_SYSTEM_CXX20_CONSTEXPR
|
|
55
|
+
#endif
|
|
56
|
+
|
|
41
57
|
// BOOST_SYSTEM_DEPRECATED
|
|
42
58
|
|
|
43
59
|
#if defined(__clang__)
|
|
@@ -94,31 +94,31 @@ protected:
|
|
|
94
94
|
|
|
95
95
|
public:
|
|
96
96
|
|
|
97
|
-
virtual const char
|
|
97
|
+
virtual const char* name() const noexcept = 0;
|
|
98
98
|
|
|
99
|
-
virtual error_condition default_error_condition( int ev ) const noexcept;
|
|
100
|
-
virtual bool equivalent( int code,
|
|
101
|
-
virtual bool equivalent(
|
|
99
|
+
BOOST_SYSTEM_CXX20_CONSTEXPR virtual error_condition default_error_condition( int ev ) const noexcept;
|
|
100
|
+
BOOST_SYSTEM_CXX20_CONSTEXPR virtual bool equivalent( int code, error_condition const& condition ) const noexcept;
|
|
101
|
+
BOOST_SYSTEM_CXX20_CONSTEXPR virtual bool equivalent( error_code const& code, int condition ) const noexcept;
|
|
102
102
|
|
|
103
103
|
virtual std::string message( int ev ) const = 0;
|
|
104
|
-
virtual char const
|
|
104
|
+
virtual char const* message( int ev, char* buffer, std::size_t len ) const noexcept;
|
|
105
105
|
|
|
106
|
-
virtual bool failed( int ev ) const noexcept
|
|
106
|
+
BOOST_SYSTEM_CXX20_CONSTEXPR virtual bool failed( int ev ) const noexcept
|
|
107
107
|
{
|
|
108
108
|
return ev != 0;
|
|
109
109
|
}
|
|
110
110
|
|
|
111
|
-
friend BOOST_SYSTEM_CONSTEXPR bool operator==( error_category const
|
|
111
|
+
friend BOOST_SYSTEM_CONSTEXPR bool operator==( error_category const& lhs, error_category const& rhs ) noexcept
|
|
112
112
|
{
|
|
113
113
|
return rhs.id_ == 0? &lhs == &rhs: lhs.id_ == rhs.id_;
|
|
114
114
|
}
|
|
115
115
|
|
|
116
|
-
friend BOOST_SYSTEM_CONSTEXPR bool operator!=( error_category const
|
|
116
|
+
friend BOOST_SYSTEM_CONSTEXPR bool operator!=( error_category const& lhs, error_category const& rhs ) noexcept
|
|
117
117
|
{
|
|
118
118
|
return !( lhs == rhs );
|
|
119
119
|
}
|
|
120
120
|
|
|
121
|
-
friend BOOST_SYSTEM_CONSTEXPR bool operator<( error_category const
|
|
121
|
+
friend BOOST_SYSTEM_CONSTEXPR bool operator<( error_category const& lhs, error_category const& rhs ) noexcept
|
|
122
122
|
{
|
|
123
123
|
if( lhs.id_ < rhs.id_ )
|
|
124
124
|
{
|
|
@@ -135,15 +135,15 @@ public:
|
|
|
135
135
|
return false; // equal
|
|
136
136
|
}
|
|
137
137
|
|
|
138
|
-
return std::less<error_category const
|
|
138
|
+
return std::less<error_category const*>()( &lhs, &rhs );
|
|
139
139
|
}
|
|
140
140
|
|
|
141
141
|
void init_stdcat() const;
|
|
142
142
|
|
|
143
143
|
# if defined(__SUNPRO_CC) // trailing __global is not supported
|
|
144
|
-
operator std::error_category const
|
|
144
|
+
operator std::error_category const& () const;
|
|
145
145
|
# else
|
|
146
|
-
operator std::error_category const
|
|
146
|
+
operator std::error_category const& () const BOOST_SYMBOL_VISIBLE;
|
|
147
147
|
# endif
|
|
148
148
|
};
|
|
149
149
|
|
|
@@ -162,7 +162,7 @@ static const boost::ulong_long_type generic_category_id = ( boost::ulong_long_ty
|
|
|
162
162
|
static const boost::ulong_long_type system_category_id = generic_category_id + 1;
|
|
163
163
|
static const boost::ulong_long_type interop_category_id = generic_category_id + 2;
|
|
164
164
|
|
|
165
|
-
BOOST_SYSTEM_CONSTEXPR inline bool failed_impl( int ev, error_category const
|
|
165
|
+
BOOST_SYSTEM_CONSTEXPR inline bool failed_impl( int ev, error_category const& cat )
|
|
166
166
|
{
|
|
167
167
|
if( cat.id_ == system_category_id || cat.id_ == generic_category_id )
|
|
168
168
|
{
|
|
@@ -26,22 +26,22 @@ namespace system
|
|
|
26
26
|
|
|
27
27
|
// error_category default implementation
|
|
28
28
|
|
|
29
|
-
inline error_condition error_category::default_error_condition( int ev ) const noexcept
|
|
29
|
+
BOOST_SYSTEM_CXX20_CONSTEXPR inline error_condition error_category::default_error_condition( int ev ) const noexcept
|
|
30
30
|
{
|
|
31
31
|
return error_condition( ev, *this );
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
inline bool error_category::equivalent( int code,
|
|
34
|
+
BOOST_SYSTEM_CXX20_CONSTEXPR inline bool error_category::equivalent( int code, error_condition const& condition ) const noexcept
|
|
35
35
|
{
|
|
36
36
|
return default_error_condition( code ) == condition;
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
inline bool error_category::equivalent(
|
|
39
|
+
BOOST_SYSTEM_CXX20_CONSTEXPR inline bool error_category::equivalent( error_code const& code, int condition ) const noexcept
|
|
40
40
|
{
|
|
41
41
|
return code.equals( condition, *this );
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
-
inline char const
|
|
44
|
+
inline char const* error_category::message( int ev, char* buffer, std::size_t len ) const noexcept
|
|
45
45
|
{
|
|
46
46
|
if( len == 0 )
|
|
47
47
|
{
|
|
@@ -116,7 +116,7 @@ inline void error_category::init_stdcat() const
|
|
|
116
116
|
#pragma GCC diagnostic ignored "-Wstrict-aliasing"
|
|
117
117
|
#endif
|
|
118
118
|
|
|
119
|
-
inline BOOST_NOINLINE error_category::operator std::error_category const
|
|
119
|
+
inline BOOST_NOINLINE error_category::operator std::error_category const& () const
|
|
120
120
|
{
|
|
121
121
|
if( id_ == detail::generic_category_id )
|
|
122
122
|
{
|
data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_deque_base.hpp
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
//////////////////////////////////////////////////////////////////////////////
|
|
13
13
|
|
|
14
14
|
#include <boost/bind/bind.hpp>
|
|
15
|
+
#include <boost/core/ref.hpp>
|
|
15
16
|
|
|
16
17
|
#include <boost/thread/detail/config.hpp>
|
|
17
18
|
#include <boost/thread/condition_variable.hpp>
|
|
@@ -187,7 +188,7 @@ namespace detail
|
|
|
187
188
|
template <class ValueType, class Queue>
|
|
188
189
|
bool sync_deque_base<ValueType, Queue>::wait_until_not_empty_or_closed(unique_lock<mutex>& lk)
|
|
189
190
|
{
|
|
190
|
-
cond_.wait(lk, boost::bind(&sync_deque_base<ValueType, Queue>::not_empty_or_closed,
|
|
191
|
+
cond_.wait(lk, boost::bind(&sync_deque_base<ValueType, Queue>::not_empty_or_closed, this, boost::ref(lk)));
|
|
191
192
|
if (! empty(lk)) return false; // success
|
|
192
193
|
return true; // closed
|
|
193
194
|
}
|
|
@@ -196,7 +197,7 @@ namespace detail
|
|
|
196
197
|
template <class WClock, class Duration>
|
|
197
198
|
queue_op_status sync_deque_base<ValueType, Queue>::wait_until_not_empty_or_closed_until(unique_lock<mutex>& lk, chrono::time_point<WClock,Duration> const&tp)
|
|
198
199
|
{
|
|
199
|
-
if (! cond_.wait_until(lk, tp, boost::bind(&sync_deque_base<ValueType, Queue>::not_empty_or_closed,
|
|
200
|
+
if (! cond_.wait_until(lk, tp, boost::bind(&sync_deque_base<ValueType, Queue>::not_empty_or_closed, this, boost::ref(lk))))
|
|
200
201
|
return queue_op_status::timeout;
|
|
201
202
|
if (! empty(lk)) return queue_op_status::success;
|
|
202
203
|
return queue_op_status::closed;
|
data/src/cxx_supportlib/vendor-modified/boost/thread/concurrent_queues/detail/sync_queue_base.hpp
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
//////////////////////////////////////////////////////////////////////////////
|
|
13
13
|
|
|
14
14
|
#include <boost/bind/bind.hpp>
|
|
15
|
+
#include <boost/core/ref.hpp>
|
|
15
16
|
|
|
16
17
|
#include <boost/thread/detail/config.hpp>
|
|
17
18
|
#include <boost/thread/condition_variable.hpp>
|
|
@@ -187,7 +188,7 @@ namespace detail
|
|
|
187
188
|
template <class ValueType, class Queue>
|
|
188
189
|
bool sync_queue_base<ValueType, Queue>::wait_until_not_empty_or_closed(unique_lock<mutex>& lk)
|
|
189
190
|
{
|
|
190
|
-
cond_.wait(lk, boost::bind(&sync_queue_base<ValueType, Queue>::not_empty_or_closed,
|
|
191
|
+
cond_.wait(lk, boost::bind(&sync_queue_base<ValueType, Queue>::not_empty_or_closed, this, boost::ref(lk)));
|
|
191
192
|
if (! empty(lk)) return false; // success
|
|
192
193
|
return true; // closed
|
|
193
194
|
}
|
|
@@ -196,7 +197,7 @@ namespace detail
|
|
|
196
197
|
template <class WClock, class Duration>
|
|
197
198
|
queue_op_status sync_queue_base<ValueType, Queue>::wait_until_not_empty_or_closed_until(unique_lock<mutex>& lk, chrono::time_point<WClock,Duration> const&tp)
|
|
198
199
|
{
|
|
199
|
-
if (! cond_.wait_until(lk, tp, boost::bind(&sync_queue_base<ValueType, Queue>::not_empty_or_closed,
|
|
200
|
+
if (! cond_.wait_until(lk, tp, boost::bind(&sync_queue_base<ValueType, Queue>::not_empty_or_closed, this, boost::ref(lk))))
|
|
200
201
|
return queue_op_status::timeout;
|
|
201
202
|
if (! empty(lk)) return queue_op_status::success;
|
|
202
203
|
return queue_op_status::closed;
|
|
@@ -30,7 +30,6 @@
|
|
|
30
30
|
#include <algorithm>
|
|
31
31
|
#include <boost/core/ref.hpp>
|
|
32
32
|
#include <boost/cstdint.hpp>
|
|
33
|
-
#include <boost/bind/bind.hpp>
|
|
34
33
|
#include <stdlib.h>
|
|
35
34
|
#include <memory>
|
|
36
35
|
#include <boost/core/enable_if.hpp>
|
|
@@ -47,6 +46,8 @@
|
|
|
47
46
|
|
|
48
47
|
#if defined(BOOST_THREAD_PROVIDES_VARIADIC_THREAD)
|
|
49
48
|
#include <tuple>
|
|
49
|
+
#else
|
|
50
|
+
#include <boost/bind/bind.hpp>
|
|
50
51
|
#endif
|
|
51
52
|
#include <boost/config/abi_prefix.hpp>
|
|
52
53
|
|
|
@@ -392,7 +392,7 @@ namespace boost
|
|
|
392
392
|
is_deferred_=false;
|
|
393
393
|
execute(lk);
|
|
394
394
|
}
|
|
395
|
-
waiters.wait(lk, boost::bind(&shared_state_base::is_done,
|
|
395
|
+
waiters.wait(lk, boost::bind(&shared_state_base::is_done, this));
|
|
396
396
|
if(rethrow && exception)
|
|
397
397
|
{
|
|
398
398
|
boost::rethrow_exception(exception);
|
|
@@ -419,7 +419,7 @@ namespace boost
|
|
|
419
419
|
return false;
|
|
420
420
|
|
|
421
421
|
do_callback(lock);
|
|
422
|
-
return waiters.timed_wait(lock, rel_time, boost::bind(&shared_state_base::is_done,
|
|
422
|
+
return waiters.timed_wait(lock, rel_time, boost::bind(&shared_state_base::is_done, this));
|
|
423
423
|
}
|
|
424
424
|
|
|
425
425
|
bool timed_wait_until(boost::system_time const& target_time)
|
|
@@ -429,7 +429,7 @@ namespace boost
|
|
|
429
429
|
return false;
|
|
430
430
|
|
|
431
431
|
do_callback(lock);
|
|
432
|
-
return waiters.timed_wait(lock, target_time, boost::bind(&shared_state_base::is_done,
|
|
432
|
+
return waiters.timed_wait(lock, target_time, boost::bind(&shared_state_base::is_done, this));
|
|
433
433
|
}
|
|
434
434
|
#endif
|
|
435
435
|
#ifdef BOOST_THREAD_USES_CHRONO
|
|
@@ -442,7 +442,7 @@ namespace boost
|
|
|
442
442
|
if (is_deferred_)
|
|
443
443
|
return future_status::deferred;
|
|
444
444
|
do_callback(lock);
|
|
445
|
-
if(!waiters.wait_until(lock, abs_time, boost::bind(&shared_state_base::is_done,
|
|
445
|
+
if(!waiters.wait_until(lock, abs_time, boost::bind(&shared_state_base::is_done, this)))
|
|
446
446
|
{
|
|
447
447
|
return future_status::timeout;
|
|
448
448
|
}
|
|
@@ -939,7 +939,7 @@ namespace boost
|
|
|
939
939
|
join();
|
|
940
940
|
#elif defined BOOST_THREAD_ASYNC_FUTURE_WAITS
|
|
941
941
|
unique_lock<boost::mutex> lk(this->mutex);
|
|
942
|
-
this->waiters.wait(lk, boost::bind(&shared_state_base::is_done,
|
|
942
|
+
this->waiters.wait(lk, boost::bind(&shared_state_base::is_done, this));
|
|
943
943
|
#endif
|
|
944
944
|
}
|
|
945
945
|
|
|
@@ -4649,32 +4649,34 @@ namespace detail
|
|
|
4649
4649
|
shared_ptr<FutureExecutorContinuationSharedState> that_;
|
|
4650
4650
|
|
|
4651
4651
|
#if ! defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
|
|
4652
|
-
|
|
4653
|
-
|
|
4654
|
-
|
|
4655
|
-
|
|
4656
|
-
|
|
4657
|
-
|
|
4658
|
-
|
|
4659
|
-
|
|
4660
|
-
}
|
|
4661
|
-
return *this;
|
|
4662
|
-
}
|
|
4663
|
-
// move
|
|
4664
|
-
run_it(BOOST_THREAD_RV_REF(run_it) x) BOOST_NOEXCEPT
|
|
4665
|
-
: that_(x.that_)
|
|
4666
|
-
{
|
|
4667
|
-
x.that_.reset();
|
|
4652
|
+
BOOST_THREAD_COPYABLE_AND_MOVABLE(run_it)
|
|
4653
|
+
run_it(run_it const& x) //BOOST_NOEXCEPT
|
|
4654
|
+
: that_(x.that_)
|
|
4655
|
+
{}
|
|
4656
|
+
run_it& operator=(BOOST_THREAD_COPY_ASSIGN_REF(run_it) x) //BOOST_NOEXCEPT
|
|
4657
|
+
{
|
|
4658
|
+
if (this != &x) {
|
|
4659
|
+
that_=x.that_;
|
|
4668
4660
|
}
|
|
4669
|
-
|
|
4670
|
-
|
|
4671
|
-
|
|
4672
|
-
|
|
4673
|
-
|
|
4674
|
-
|
|
4661
|
+
return *this;
|
|
4662
|
+
}
|
|
4663
|
+
// move
|
|
4664
|
+
run_it(BOOST_THREAD_RV_REF(run_it) x) BOOST_NOEXCEPT
|
|
4665
|
+
: that_(boost::move(x.that_))
|
|
4666
|
+
{
|
|
4667
|
+
}
|
|
4668
|
+
run_it& operator=(BOOST_THREAD_RV_REF(run_it) x) BOOST_NOEXCEPT {
|
|
4669
|
+
if (this != &x) {
|
|
4670
|
+
that_ = boost::move(x.that_);
|
|
4675
4671
|
}
|
|
4672
|
+
return *this;
|
|
4673
|
+
}
|
|
4674
|
+
run_it(shared_ptr<FutureExecutorContinuationSharedState> that) : that_(boost::move(that))
|
|
4675
|
+
{}
|
|
4676
|
+
#else
|
|
4677
|
+
run_it(shared_ptr<FutureExecutorContinuationSharedState> that) : that_(that)
|
|
4678
|
+
{}
|
|
4676
4679
|
#endif
|
|
4677
|
-
run_it(shared_ptr<FutureExecutorContinuationSharedState> that) : that_ (that) {}
|
|
4678
4680
|
|
|
4679
4681
|
void operator()()
|
|
4680
4682
|
{
|
|
@@ -19,14 +19,17 @@
|
|
|
19
19
|
#include <boost/thread/detail/delete.hpp>
|
|
20
20
|
#include <boost/core/no_exceptions_support.hpp>
|
|
21
21
|
|
|
22
|
-
#include <boost/bind/bind.hpp>
|
|
23
22
|
#include <boost/assert.hpp>
|
|
24
|
-
#include <boost/config/abi_prefix.hpp>
|
|
25
|
-
|
|
26
23
|
#include <boost/cstdint.hpp>
|
|
27
24
|
#include <pthread.h>
|
|
28
25
|
#include <csignal>
|
|
29
26
|
|
|
27
|
+
#if !defined(BOOST_THREAD_PROVIDES_INVOKE) && !defined(BOOST_THREAD_PROVIDES_INVOKE_RET)
|
|
28
|
+
#include <boost/bind/bind.hpp>
|
|
29
|
+
#endif
|
|
30
|
+
|
|
31
|
+
#include <boost/config/abi_prefix.hpp>
|
|
32
|
+
|
|
30
33
|
namespace boost
|
|
31
34
|
{
|
|
32
35
|
|
|
@@ -16,8 +16,12 @@
|
|
|
16
16
|
#include <boost/thread/detail/move.hpp>
|
|
17
17
|
#include <boost/thread/detail/invoke.hpp>
|
|
18
18
|
#include <boost/core/no_exceptions_support.hpp>
|
|
19
|
+
#include <boost/atomic/capabilities.hpp>
|
|
20
|
+
#include <boost/atomic/atomic.hpp>
|
|
21
|
+
|
|
22
|
+
#if !defined(BOOST_THREAD_PROVIDES_INVOKE) && !defined(BOOST_THREAD_PROVIDES_INVOKE_RET)
|
|
19
23
|
#include <boost/bind/bind.hpp>
|
|
20
|
-
#
|
|
24
|
+
#endif
|
|
21
25
|
|
|
22
26
|
#include <boost/config/abi_prefix.hpp>
|
|
23
27
|
|
|
@@ -171,7 +171,7 @@ namespace boost
|
|
|
171
171
|
boost::this_thread::disable_interruption do_not_disturb;
|
|
172
172
|
#endif
|
|
173
173
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
174
|
-
shared_cond.wait(lk, boost::bind(&state_data::can_lock_shared,
|
|
174
|
+
shared_cond.wait(lk, boost::bind(&state_data::can_lock_shared, &state));
|
|
175
175
|
state.lock_shared();
|
|
176
176
|
}
|
|
177
177
|
|
|
@@ -194,7 +194,7 @@ namespace boost
|
|
|
194
194
|
boost::this_thread::disable_interruption do_not_disturb;
|
|
195
195
|
#endif
|
|
196
196
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
197
|
-
if(!shared_cond.timed_wait(lk, timeout, boost::bind(&state_data::can_lock_shared,
|
|
197
|
+
if(!shared_cond.timed_wait(lk, timeout, boost::bind(&state_data::can_lock_shared, &state)))
|
|
198
198
|
{
|
|
199
199
|
return false;
|
|
200
200
|
}
|
|
@@ -209,7 +209,7 @@ namespace boost
|
|
|
209
209
|
boost::this_thread::disable_interruption do_not_disturb;
|
|
210
210
|
#endif
|
|
211
211
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
212
|
-
if(!shared_cond.timed_wait(lk, relative_time, boost::bind(&state_data::can_lock_shared,
|
|
212
|
+
if(!shared_cond.timed_wait(lk, relative_time, boost::bind(&state_data::can_lock_shared, &state)))
|
|
213
213
|
{
|
|
214
214
|
return false;
|
|
215
215
|
}
|
|
@@ -230,7 +230,7 @@ namespace boost
|
|
|
230
230
|
boost::this_thread::disable_interruption do_not_disturb;
|
|
231
231
|
#endif
|
|
232
232
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
233
|
-
if(!shared_cond.wait_until(lk, abs_time, boost::bind(&state_data::can_lock_shared,
|
|
233
|
+
if(!shared_cond.wait_until(lk, abs_time, boost::bind(&state_data::can_lock_shared, &state)))
|
|
234
234
|
{
|
|
235
235
|
return false;
|
|
236
236
|
}
|
|
@@ -270,7 +270,7 @@ namespace boost
|
|
|
270
270
|
#endif
|
|
271
271
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
272
272
|
state.exclusive_waiting_blocked=true;
|
|
273
|
-
exclusive_cond.wait(lk, boost::bind(&state_data::can_lock,
|
|
273
|
+
exclusive_cond.wait(lk, boost::bind(&state_data::can_lock, &state));
|
|
274
274
|
state.exclusive=true;
|
|
275
275
|
}
|
|
276
276
|
|
|
@@ -282,7 +282,7 @@ namespace boost
|
|
|
282
282
|
#endif
|
|
283
283
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
284
284
|
state.exclusive_waiting_blocked=true;
|
|
285
|
-
if(!exclusive_cond.timed_wait(lk, timeout, boost::bind(&state_data::can_lock,
|
|
285
|
+
if(!exclusive_cond.timed_wait(lk, timeout, boost::bind(&state_data::can_lock, &state)))
|
|
286
286
|
{
|
|
287
287
|
state.exclusive_waiting_blocked=false;
|
|
288
288
|
release_waiters();
|
|
@@ -300,7 +300,7 @@ namespace boost
|
|
|
300
300
|
#endif
|
|
301
301
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
302
302
|
state.exclusive_waiting_blocked=true;
|
|
303
|
-
if(!exclusive_cond.timed_wait(lk, relative_time, boost::bind(&state_data::can_lock,
|
|
303
|
+
if(!exclusive_cond.timed_wait(lk, relative_time, boost::bind(&state_data::can_lock, &state)))
|
|
304
304
|
{
|
|
305
305
|
state.exclusive_waiting_blocked=false;
|
|
306
306
|
release_waiters();
|
|
@@ -324,7 +324,7 @@ namespace boost
|
|
|
324
324
|
#endif
|
|
325
325
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
326
326
|
state.exclusive_waiting_blocked=true;
|
|
327
|
-
if(!exclusive_cond.wait_until(lk, abs_time, boost::bind(&state_data::can_lock,
|
|
327
|
+
if(!exclusive_cond.wait_until(lk, abs_time, boost::bind(&state_data::can_lock, &state)))
|
|
328
328
|
{
|
|
329
329
|
state.exclusive_waiting_blocked=false;
|
|
330
330
|
release_waiters();
|
|
@@ -362,7 +362,7 @@ namespace boost
|
|
|
362
362
|
boost::this_thread::disable_interruption do_not_disturb;
|
|
363
363
|
#endif
|
|
364
364
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
365
|
-
shared_cond.wait(lk, boost::bind(&state_data::can_lock_upgrade,
|
|
365
|
+
shared_cond.wait(lk, boost::bind(&state_data::can_lock_upgrade, &state));
|
|
366
366
|
state.lock_shared();
|
|
367
367
|
state.upgrade=true;
|
|
368
368
|
}
|
|
@@ -374,7 +374,7 @@ namespace boost
|
|
|
374
374
|
boost::this_thread::disable_interruption do_not_disturb;
|
|
375
375
|
#endif
|
|
376
376
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
377
|
-
if(!shared_cond.timed_wait(lk, timeout, boost::bind(&state_data::can_lock_upgrade,
|
|
377
|
+
if(!shared_cond.timed_wait(lk, timeout, boost::bind(&state_data::can_lock_upgrade, &state)))
|
|
378
378
|
{
|
|
379
379
|
return false;
|
|
380
380
|
}
|
|
@@ -390,7 +390,7 @@ namespace boost
|
|
|
390
390
|
boost::this_thread::disable_interruption do_not_disturb;
|
|
391
391
|
#endif
|
|
392
392
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
393
|
-
if(!shared_cond.timed_wait(lk, relative_time, boost::bind(&state_data::can_lock_upgrade,
|
|
393
|
+
if(!shared_cond.timed_wait(lk, relative_time, boost::bind(&state_data::can_lock_upgrade, &state)))
|
|
394
394
|
{
|
|
395
395
|
return false;
|
|
396
396
|
}
|
|
@@ -412,7 +412,7 @@ namespace boost
|
|
|
412
412
|
boost::this_thread::disable_interruption do_not_disturb;
|
|
413
413
|
#endif
|
|
414
414
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
415
|
-
if(!shared_cond.wait_until(lk, abs_time, boost::bind(&state_data::can_lock_upgrade,
|
|
415
|
+
if(!shared_cond.wait_until(lk, abs_time, boost::bind(&state_data::can_lock_upgrade, &state)))
|
|
416
416
|
{
|
|
417
417
|
return false;
|
|
418
418
|
}
|
|
@@ -457,7 +457,7 @@ namespace boost
|
|
|
457
457
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
458
458
|
state.assert_lock_upgraded();
|
|
459
459
|
state.unlock_shared();
|
|
460
|
-
upgrade_cond.wait(lk, boost::bind(&state_data::no_shared,
|
|
460
|
+
upgrade_cond.wait(lk, boost::bind(&state_data::no_shared, &state));
|
|
461
461
|
state.upgrade=false;
|
|
462
462
|
state.exclusive=true;
|
|
463
463
|
state.assert_locked();
|
|
@@ -511,7 +511,7 @@ namespace boost
|
|
|
511
511
|
#endif
|
|
512
512
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
513
513
|
state.assert_lock_upgraded();
|
|
514
|
-
if(!shared_cond.wait_until(lk, abs_time, boost::bind(&state_data::one_shared,
|
|
514
|
+
if(!shared_cond.wait_until(lk, abs_time, boost::bind(&state_data::one_shared, &state)))
|
|
515
515
|
{
|
|
516
516
|
return false;
|
|
517
517
|
}
|
|
@@ -569,7 +569,7 @@ namespace boost
|
|
|
569
569
|
#endif
|
|
570
570
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
571
571
|
state.assert_lock_shared();
|
|
572
|
-
if(!shared_cond.wait_until(lk, abs_time, boost::bind(&state_data::one_shared,
|
|
572
|
+
if(!shared_cond.wait_until(lk, abs_time, boost::bind(&state_data::one_shared, &state)))
|
|
573
573
|
{
|
|
574
574
|
return false;
|
|
575
575
|
}
|
|
@@ -623,7 +623,7 @@ namespace boost
|
|
|
623
623
|
#endif
|
|
624
624
|
boost::unique_lock<boost::mutex> lk(state_change);
|
|
625
625
|
state.assert_lock_shared();
|
|
626
|
-
if(!exclusive_cond.wait_until(lk, abs_time, boost::bind(&state_data::can_lock_upgrade,
|
|
626
|
+
if(!exclusive_cond.wait_until(lk, abs_time, boost::bind(&state_data::can_lock_upgrade, &state)))
|
|
627
627
|
{
|
|
628
628
|
return false;
|
|
629
629
|
}
|