aboutsummaryrefslogtreecommitdiff
path: root/bpkg/package-skeleton.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2022-06-14 12:54:20 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2022-06-14 14:46:53 +0200
commitcdbf968d003392a08c6dda204023e51a8b4e1e8e (patch)
treed52aa7f9f5f9a756d21f56d507d53b749e0c2c1d /bpkg/package-skeleton.cxx
parent4391385adce139b0722471b411fd45b6e52a787d (diff)
Fix few logic bugs in configuration negotiation
Diffstat (limited to 'bpkg/package-skeleton.cxx')
-rw-r--r--bpkg/package-skeleton.cxx13
1 files changed, 8 insertions, 5 deletions
diff --git a/bpkg/package-skeleton.cxx b/bpkg/package-skeleton.cxx
index 72192ff..c98d48d 100644
--- a/bpkg/package-skeleton.cxx
+++ b/bpkg/package-skeleton.cxx
@@ -512,11 +512,14 @@ namespace bpkg
{
if (config_variable_value* ov = old.find (v.name))
{
- assert (ov->origin == variable_origin::buildfile);
-
- v.origin = variable_origin::buildfile;
- v.dependent = move (ov->dependent);
- v.confirmed = ov->confirmed;
+ if (ov->origin == variable_origin::buildfile)
+ {
+ v.origin = variable_origin::buildfile;
+ v.dependent = move (ov->dependent);
+ v.confirmed = ov->confirmed;
+ }
+ else
+ assert (ov->origin == variable_origin::override_);
}
}