Skip to content
Snippets Groups Projects
Commit 3ae4b982 authored by Cyrille Berger's avatar Cyrille Berger
Browse files

fix crash with ValueHash/ValueList used as default argument (or even at all)

parent 546fc39a
No related branches found
No related tags found
No related merge requests found
...@@ -186,7 +186,7 @@ namespace pybind11::detail ...@@ -186,7 +186,7 @@ namespace pybind11::detail
*/ */
static handle cast(knowCore::ValueHash src, return_value_policy policy, handle parent ) static handle cast(knowCore::ValueHash src, return_value_policy policy, handle parent )
{ {
return pybind11::cast(src.hash(), policy, parent); return pybind11::cast(src.hash(), policy, parent).release();
} }
}; };
template <> template <>
...@@ -210,7 +210,7 @@ namespace pybind11::detail ...@@ -210,7 +210,7 @@ namespace pybind11::detail
*/ */
static handle cast(knowCore::ValueList src, return_value_policy policy, handle parent ) static handle cast(knowCore::ValueList src, return_value_policy policy, handle parent )
{ {
return pybind11::cast(src.values(), policy, parent); return pybind11::cast(src.values(), policy, parent).release();
} }
}; };
template <> template <>
......
...@@ -30,6 +30,10 @@ ValueHash::ValueHash(const ValueHash& _rhs) : d(_rhs.d) ...@@ -30,6 +30,10 @@ ValueHash::ValueHash(const ValueHash& _rhs) : d(_rhs.d)
{ {
} }
ValueHash::ValueHash(ValueHash&& _rhs) : d(std::move(_rhs.d))
{
}
ValueHash ValueHash::operator=(const ValueHash& _rhs) ValueHash ValueHash::operator=(const ValueHash& _rhs)
{ {
d = _rhs.d; d = _rhs.d;
......
...@@ -16,6 +16,7 @@ namespace knowCore ...@@ -16,6 +16,7 @@ namespace knowCore
ValueHash(std::initializer_list<std::pair<QString, Value> >); ValueHash(std::initializer_list<std::pair<QString, Value> >);
ValueHash(const QHash<QString, Value>& _value); ValueHash(const QHash<QString, Value>& _value);
ValueHash(const ValueHash& _list); ValueHash(const ValueHash& _list);
ValueHash(ValueHash&& _list);
ValueHash operator=(const ValueHash& _list); ValueHash operator=(const ValueHash& _list);
~ValueHash(); ~ValueHash();
static ReturnValue<ValueHash> fromVariantMap(const QVariantMap& _map); static ReturnValue<ValueHash> fromVariantMap(const QVariantMap& _map);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment