Commit fbec17ce by Wenzel Jakob

error_already_set: move-only semantics

parent 2ac2d694
......@@ -475,6 +475,13 @@ public:
error_already_set() : std::runtime_error(detail::error_string()) {
PyErr_Fetch(&type, &value, &trace);
}
error_already_set(const error_already_set &) = delete;
error_already_set(error_already_set &&e)
: std::runtime_error(e.what()), type(e.type), value(e.value),
trace(e.trace) { e.type = e.value = e.trace = nullptr; }
~error_already_set() { Py_XDECREF(type); Py_XDECREF(value); Py_XDECREF(trace); }
/// Give the error back to Python
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment