fix: UvHandle move semantics (#43615)
reassign the uv_handle_t of the source
This commit is contained in:
parent
0d4d752c1b
commit
8c5e7bbf6b
1 changed files with 11 additions and 2 deletions
|
@ -62,8 +62,17 @@ class UvHandle {
|
||||||
UvHandle() : t_{new T} {}
|
UvHandle() : t_{new T} {}
|
||||||
~UvHandle() { reset(); }
|
~UvHandle() { reset(); }
|
||||||
|
|
||||||
UvHandle(UvHandle&&) = default;
|
explicit UvHandle(UvHandle&& that) {
|
||||||
UvHandle& operator=(UvHandle&&) = default;
|
t_ = that.t_;
|
||||||
|
that.t_ = nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
UvHandle& operator=(UvHandle&& that) {
|
||||||
|
reset();
|
||||||
|
t_ = that.t_;
|
||||||
|
that.t_ = nullptr;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
UvHandle(const UvHandle&) = delete;
|
UvHandle(const UvHandle&) = delete;
|
||||||
UvHandle& operator=(const UvHandle&) = delete;
|
UvHandle& operator=(const UvHandle&) = delete;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue