Unify package removal code
commit00628c7268e3b81045961be51a0ca640aea368b0
authorDan McGee <dan@archlinux.org>
Wed, 6 Jul 2011 14:18:59 +0000 (6 09:18 -0500)
committerDan McGee <dan@archlinux.org>
Wed, 6 Jul 2011 14:26:09 +0000 (6 09:26 -0500)
tree96f4d57d6c9852e7bf1d7a2fb9676401cc859244
parent1d53dd716d7c7bea297a532809c4557b805a9918
Unify package removal code

This code duplication has always been a rather clumsy casuality of
fixing some past upgrade issues. Unify the removal code across upgrade
and remove operations into  a new _alpm_remove_single_package() method
wihch makes it very clear how we handle upgrade and remove differently,
via several conditionals on newpkg.

This commit highlights interesting behavior such as the fact that the
implicit removal in every package upgrade never gets transaction events
or progress callbacks.

Signed-off-by: Dan McGee <dan@archlinux.org>
lib/libalpm/add.c
lib/libalpm/remove.c
lib/libalpm/remove.h