aboutsummaryrefslogtreecommitdiff
path: root/bpkg/pkg-disfigure.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'bpkg/pkg-disfigure.cxx')
-rw-r--r--bpkg/pkg-disfigure.cxx13
1 files changed, 13 insertions, 0 deletions
diff --git a/bpkg/pkg-disfigure.cxx b/bpkg/pkg-disfigure.cxx
index 7ddd418..2239314 100644
--- a/bpkg/pkg-disfigure.cxx
+++ b/bpkg/pkg-disfigure.cxx
@@ -72,6 +72,11 @@ namespace bpkg
// Since we are no longer configured, clear the prerequisites list.
//
p->prerequisites.clear ();
+ p->dependency_alternatives.clear ();
+
+ // Mark the section as loaded, so dependency alternatives are updated.
+ //
+ p->dependency_alternatives_section.load ();
assert (p->src_root); // Must be set since unpacked.
assert (p->out_root); // Must be set since configured.
@@ -114,6 +119,8 @@ namespace bpkg
else
bspec = "disfigure('" + src_root.representation () + "'@'" + rep +
"')";
+
+ disfigure = true; // Make sure the flag matches the behavior.
}
// Clean and/or disfigure.
@@ -196,6 +203,12 @@ namespace bpkg
<< "use 'pkg-purge' to remove";
throw;
}
+
+ if (disfigure)
+ {
+ p->config_variables.clear ();
+ p->config_checksum.clear ();
+ }
}
p->out_root = nullopt;