From c108bb6ba4090046d8c2cd21f40a8008be977311 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Tue, 27 Oct 2015 10:06:45 +0200 Subject: Finish drop command implementation --- bpkg/pkg-purge.cxx | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'bpkg/pkg-purge.cxx') diff --git a/bpkg/pkg-purge.cxx b/bpkg/pkg-purge.cxx index b90136a..9b63c15 100644 --- a/bpkg/pkg-purge.cxx +++ b/bpkg/pkg-purge.cxx @@ -66,6 +66,26 @@ namespace bpkg } } + void + pkg_purge (const dir_path& c, + transaction& t, + const shared_ptr& p) + { + assert (p->state == package_state::fetched || + p->state == package_state::unpacked); + + tracer trace ("pkg_purge"); + + database& db (t.database ()); + tracer_guard tg (db, trace); + + assert (!p->out_root); + pkg_purge_fs (c, t, p, true); + + db.erase (p); + t.commit (); + } + int pkg_purge (const pkg_purge_options& o, cli::scanner& args) { -- cgit v1.1