aboutsummaryrefslogtreecommitdiff
path: root/src/libstore/build/hook-instance.cc
diff options
context:
space:
mode:
authoreldritch horrors <pennae@lix.systems>2024-03-18 14:52:04 +0100
committereldritch horrors <pennae@lix.systems>2024-03-18 15:42:52 -0600
commitf38ae92a38a66b597dbd6975219d6ddb4f52fa4f (patch)
treebe6e1ed225e3d77a3c1fbcef1778169878326cbe /src/libstore/build/hook-instance.cc
parent0f518f44e289114eb4828c8232bc0b79c7a85ac7 (diff)
libutil: make AutoCloseFD a better resource
add a reset() method to close the wrapped fd instead of assigning magic constants. also make the from-fd constructor explicit so you can't accidentally assign the *wrong* magic constant, or even an unrelated integer that also just happens to be an fd by pure chance. Change-Id: I51311b0f6e040240886b5103d39d1794a6acc325
Diffstat (limited to 'src/libstore/build/hook-instance.cc')
-rw-r--r--src/libstore/build/hook-instance.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/libstore/build/hook-instance.cc b/src/libstore/build/hook-instance.cc
index 337c60bd4..ea4c2e508 100644
--- a/src/libstore/build/hook-instance.cc
+++ b/src/libstore/build/hook-instance.cc
@@ -61,8 +61,8 @@ HookInstance::HookInstance()
});
pid.setSeparatePG(true);
- fromHook.writeSide = -1;
- toHook.readSide = -1;
+ fromHook.writeSide.reset();
+ toHook.readSide.reset();
sink = FdSink(toHook.writeSide.get());
std::map<std::string, Config::SettingInfo> settings;
@@ -76,7 +76,7 @@ HookInstance::HookInstance()
HookInstance::~HookInstance()
{
try {
- toHook.writeSide = -1;
+ toHook.writeSide.reset();
if (pid != -1) pid.kill();
} catch (...) {
ignoreException();