aboutsummaryrefslogtreecommitdiff
path: root/bpkg/pkg-purge.cxx
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2016-08-19 17:37:29 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2016-08-29 18:20:03 +0300
commit53c2aa8e382dd50d09b385285bc3fa0b645ace0a (patch)
tree6d23d091bc57c0aa8d8a529e63ec2f2f22322a3a /bpkg/pkg-purge.cxx
parenta4b29effed15b0a3e9309a4633a3ada37f3081e6 (diff)
Support system packages
Diffstat (limited to 'bpkg/pkg-purge.cxx')
-rw-r--r--bpkg/pkg-purge.cxx12
1 files changed, 8 insertions, 4 deletions
diff --git a/bpkg/pkg-purge.cxx b/bpkg/pkg-purge.cxx
index 34ca7f8..c61658e 100644
--- a/bpkg/pkg-purge.cxx
+++ b/bpkg/pkg-purge.cxx
@@ -82,6 +82,8 @@ namespace bpkg
db.erase (p);
t.commit ();
+
+ p->state = package_state::transient;
}
int
@@ -190,16 +192,18 @@ namespace bpkg
{
p->state = package_state::fetched;
db.update (p);
+ t.commit ();
}
}
else
+ {
db.erase (p);
-
- t.commit ();
+ t.commit ();
+ p->state = package_state::transient;
+ }
if (verb)
- text << (o.keep () ? "keeping archive " : "purged ")
- << p->name << " " << p->version;
+ text << (o.keep () ? "keeping archive " : "purged ") << *p;
return 0;
}