aboutsummaryrefslogtreecommitdiff
path: root/src/libcmd
diff options
context:
space:
mode:
Diffstat (limited to 'src/libcmd')
-rw-r--r--src/libcmd/installable-attr-path.cc5
-rw-r--r--src/libcmd/installable-derived-path.cc2
-rw-r--r--src/libcmd/installable-flake.cc2
-rw-r--r--src/libcmd/installables.cc6
4 files changed, 8 insertions, 7 deletions
diff --git a/src/libcmd/installable-attr-path.cc b/src/libcmd/installable-attr-path.cc
index 2f89eee02..06e507872 100644
--- a/src/libcmd/installable-attr-path.cc
+++ b/src/libcmd/installable-attr-path.cc
@@ -80,7 +80,7 @@ DerivedPathsWithInfo InstallableAttrPath::toDerivedPaths()
[&](const ExtendedOutputsSpec::Explicit & e) -> OutputsSpec {
return e;
},
- }, extendedOutputsSpec.raw());
+ }, extendedOutputsSpec.raw);
auto [iter, didInsert] = byDrvPath.emplace(*drvPath, newOutputs);
@@ -96,6 +96,7 @@ DerivedPathsWithInfo InstallableAttrPath::toDerivedPaths()
.outputs = outputs,
},
.info = make_ref<ExtraPathInfoValue>(ExtraPathInfoValue::Value {
+ .extendedOutputsSpec = outputs,
/* FIXME: reconsider backwards compatibility above
so we can fill in this info. */
}),
@@ -114,7 +115,7 @@ InstallableAttrPath InstallableAttrPath::parse(
return {
state, cmd, v,
prefix == "." ? "" : std::string { prefix },
- extendedOutputsSpec
+ std::move(extendedOutputsSpec),
};
}
diff --git a/src/libcmd/installable-derived-path.cc b/src/libcmd/installable-derived-path.cc
index b45641e8a..4d1f83a1c 100644
--- a/src/libcmd/installable-derived-path.cc
+++ b/src/libcmd/installable-derived-path.cc
@@ -55,7 +55,7 @@ InstallableDerivedPath InstallableDerivedPath::parse(
.outputs = outputSpec,
};
},
- }, extendedOutputsSpec.raw());
+ }, extendedOutputsSpec.raw);
return InstallableDerivedPath {
store,
std::move(derivedPath),
diff --git a/src/libcmd/installable-flake.cc b/src/libcmd/installable-flake.cc
index 1b169c3bd..4074da06d 100644
--- a/src/libcmd/installable-flake.cc
+++ b/src/libcmd/installable-flake.cc
@@ -141,7 +141,7 @@ DerivedPathsWithInfo InstallableFlake::toDerivedPaths()
[&](const ExtendedOutputsSpec::Explicit & e) -> OutputsSpec {
return e;
},
- }, extendedOutputsSpec.raw()),
+ }, extendedOutputsSpec.raw),
},
.info = make_ref<ExtraPathInfoFlake>(
ExtraPathInfoValue::Value {
diff --git a/src/libcmd/installables.cc b/src/libcmd/installables.cc
index 4c7d134ec..eb1903084 100644
--- a/src/libcmd/installables.cc
+++ b/src/libcmd/installables.cc
@@ -459,7 +459,7 @@ Installables SourceExprCommand::parseInstallables(
result.push_back(
make_ref<InstallableAttrPath>(
InstallableAttrPath::parse(
- state, *this, vFile, prefix, extendedOutputsSpec)));
+ state, *this, vFile, std::move(prefix), std::move(extendedOutputsSpec))));
}
} else {
@@ -475,7 +475,7 @@ Installables SourceExprCommand::parseInstallables(
if (prefix.find('/') != std::string::npos) {
try {
result.push_back(make_ref<InstallableDerivedPath>(
- InstallableDerivedPath::parse(store, prefix, extendedOutputsSpec)));
+ InstallableDerivedPath::parse(store, prefix, extendedOutputsSpec.raw)));
continue;
} catch (BadStorePath &) {
} catch (...) {
@@ -491,7 +491,7 @@ Installables SourceExprCommand::parseInstallables(
getEvalState(),
std::move(flakeRef),
fragment,
- extendedOutputsSpec,
+ std::move(extendedOutputsSpec),
getDefaultFlakeAttrPaths(),
getDefaultFlakeAttrPathPrefixes(),
lockFlags));