diff options
author | Eli Schwartz <eschwartz@archlinux.org> | 2018-12-26 22:58:26 -0500 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2019-01-04 11:14:52 +1000 |
commit | 4778f1318853ac9fc1f838d836dbe017fb6cbddc (patch) | |
tree | 8a0553b4da25281b7602c50ff29e7bb86f456f3a | |
parent | 2d403709d97cca381873a9d56cd37f51c0f3eade (diff) | |
download | pacman-4778f1318853ac9fc1f838d836dbe017fb6cbddc.tar.xz |
repo-remove: fix removing packages with deltas
We have code in order to remove deltas when removing a package, but it
is never run, since we try to remove the wrong file.
This was broken in commit cb0f2bd0385f447e045e2b2aab9ffa55df3c2d8a which
modified the internal layout we use to modify the db, changing "tree" to
"db", but did not update all locations where it was used.
This worked swimmingly well as long as only repo-add updates were
handling the backup and restore of the delta file, as the delta file
therefore got backed up to the correct location (db) in the shared
db_remove_entry() function.
But later on in the repo-remove logic, we tried removing a different
file that will never exist (tree).
Fixes FS#53041
Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r-- | scripts/repo-add.sh.in | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/scripts/repo-add.sh.in b/scripts/repo-add.sh.in index bccf2f37..1c7fb2f6 100644 --- a/scripts/repo-add.sh.in +++ b/scripts/repo-add.sh.in @@ -611,7 +611,7 @@ remove() { msg "$(gettext "Searching for package '%s'...")" "$pkgname" if db_remove_entry "$pkgname"; then - rm -f "$tmpdir/tree/$pkgname.deltas" + rm -f "$tmpdir/db/$pkgname.deltas" return 0 else error "$(gettext "Package matching '%s' not found.")" "$pkgname" |