io/UniqueFileDescriptor: use AdoptTag in the constructors that adopt ownership

This commit is contained in:
Max Kellermann
2025-01-23 16:47:13 +01:00
committed by Max Kellermann
parent 765a6a2f20
commit 35dc1fc589
9 changed files with 115 additions and 9 deletions
+1 -1
View File
@@ -225,7 +225,7 @@ FileDescriptor::SetPipeCapacity(unsigned capacity) const noexcept
UniqueFileDescriptor
FileDescriptor::Duplicate() const noexcept
{
return UniqueFileDescriptor{::dup(Get())};
return UniqueFileDescriptor{AdoptTag{}, ::dup(Get())};
}
bool
+3 -2
View File
@@ -4,6 +4,7 @@
#pragma once
#include "FileDescriptor.hxx" // IWYU pragma: export
#include "util/TagStructs.hxx"
#include <cassert>
#include <utility>
@@ -16,10 +17,10 @@ public:
UniqueFileDescriptor() noexcept
:FileDescriptor(FileDescriptor::Undefined()) {}
explicit UniqueFileDescriptor(int _fd) noexcept
explicit UniqueFileDescriptor(AdoptTag, int _fd) noexcept
:FileDescriptor(_fd) {}
explicit UniqueFileDescriptor(FileDescriptor _fd) noexcept
explicit UniqueFileDescriptor(AdoptTag, FileDescriptor _fd) noexcept
:FileDescriptor(_fd) {}
UniqueFileDescriptor(const UniqueFileDescriptor &) = delete;