summaryrefslogtreecommitdiff
path: root/include/o3tl
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2019-11-06 09:51:48 +0000
committerCaolán McNamara <caolanm@redhat.com>2019-11-06 11:44:46 +0100
commit8cdf166552aea7cb3dbdc183b76b5457c6651cf7 (patch)
tree06d398139ee3fa5ba0bbcb06b8f2a17aa0ee7d9c /include/o3tl
parentd71cf6390a89ea6a4fab724e3a7996f28ca33661 (diff)
ofz#12553 Timeout
before: real 1m37.479s user 1m30.682s sys 0m0.261s after: real 0m44.166s user 0m44.010s sys 0m0.056s Change-Id: I9832a2aac0278120fb62fe4a6a3e4507fc80e36f Reviewed-on: https://gerrit.libreoffice.org/82129 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'include/o3tl')
-rw-r--r--include/o3tl/cow_wrapper.hxx13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/o3tl/cow_wrapper.hxx b/include/o3tl/cow_wrapper.hxx
index 2fa7f03f276f..b9c463b852e4 100644
--- a/include/o3tl/cow_wrapper.hxx
+++ b/include/o3tl/cow_wrapper.hxx
@@ -194,6 +194,12 @@ int cow_wrapper_client::queryUnmodified() const
{
}
+ explicit impl_t( T&& v ) :
+ m_value(std::move(v)),
+ m_ref_count(1)
+ {
+ }
+
T m_value;
typename MTPolicy::ref_count_t m_ref_count;
};
@@ -227,6 +233,13 @@ int cow_wrapper_client::queryUnmodified() const
{
}
+ /** Move-construct wrapped type instance from given object
+ */
+ explicit cow_wrapper( value_type&& r ) :
+ m_pimpl( new impl_t(std::move(r)) )
+ {
+ }
+
/** Shallow-copy given cow_wrapper
*/
explicit cow_wrapper( const cow_wrapper& rSrc ) : // nothrow