From f7314433848e9db3454109a85eb1ca438c003133 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 18 Sep 2020 13:39:17 +0200 Subject: [PATCH] Use std::optional --- src/nix/build.cc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/nix/build.cc b/src/nix/build.cc index 4605eb13e..5952d696b 100644 --- a/src/nix/build.cc +++ b/src/nix/build.cc @@ -8,7 +8,7 @@ using namespace nix; struct CmdBuild : InstallablesCommand, MixDryRun, MixProfile { - Path outLink = "result"; + std::optional outLink = "result"; BuildMode buildMode = bmNormal; CmdBuild() @@ -25,7 +25,7 @@ struct CmdBuild : InstallablesCommand, MixDryRun, MixProfile addFlag({ .longName = "no-link", .description = "do not create a symlink to the build result", - .handler = {&outLink, Path("")}, + .handler = {&outLink, {}}, }); addFlag({ @@ -64,19 +64,19 @@ struct CmdBuild : InstallablesCommand, MixDryRun, MixProfile if (dryRun) return; - if (outLink != "") + if (outLink) if (auto store2 = store.dynamic_pointer_cast()) for (size_t i = 0; i < buildables.size(); ++i) std::visit(overloaded { [&](BuildableOpaque bo) { - std::string symlink = outLink; + std::string symlink = *outLink; if (i) symlink += fmt("-%d", i); store2->addPermRoot(bo.path, absPath(symlink)); }, [&](BuildableFromDrv bfd) { auto builtOutputs = store->queryDerivationOutputMap(bfd.drvPath); for (auto & output : builtOutputs) { - std::string symlink = outLink; + std::string symlink = *outLink; if (i) symlink += fmt("-%d", i); if (output.first != "out") symlink += fmt("-%s", output.first); store2->addPermRoot(output.second, absPath(symlink));