From 85eff0e9f81a3eeccc67e534f43be7e9f2e75521 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Sat, 10 Nov 2018 17:19:40 +0300 Subject: Fix pkg-build crash on system package drop --- bpkg/pkg-build.cxx | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'bpkg') diff --git a/bpkg/pkg-build.cxx b/bpkg/pkg-build.cxx index 80e14f0..27e509b 100644 --- a/bpkg/pkg-build.cxx +++ b/bpkg/pkg-build.cxx @@ -4260,13 +4260,20 @@ namespace bpkg { if (*p.action == build_package::drop) { - transaction t (db, !simulate /* start */); - pkg_purge (c, t, sp, simulate); // Commits the transaction. + // Note that the selected system package has already gone being + // disfigured (see above). + // + if (sp != nullptr) + { + transaction t (db, !simulate /* start */); + pkg_purge (c, t, sp, simulate); // Commits the transaction. - if (verbose && !o.no_result ()) - text << "purged " << *sp; + if (verbose && !o.no_result ()) + text << "purged " << *sp; + + sp = nullptr; + } - sp = nullptr; break; } -- cgit v1.1