mirror of
https://github.com/moparisthebest/pacman
synced 2024-11-15 22:05:02 -05:00
add a new upgrade026 pactest for backup handling.
This is the bash case when the /etc/profile file was removed by error from the package, but stayed in the backup array. Ref: http://www.archlinux.org/pipermail/arch-dev-public/2007-December/003556.html Also fixed a little typo in add.c, but it's disabled code. Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
This commit is contained in:
parent
b3c6bdda38
commit
01930400a5
@ -259,9 +259,7 @@ static int upgrade_remove(pmpkg_t *oldpkg, pmpkg_t *newpkg, pmtrans_t *trans, pm
|
|||||||
_alpm_log(PM_LOG_DEBUG, "adding %s to the NoUpgrade array temporarily\n",
|
_alpm_log(PM_LOG_DEBUG, "adding %s to the NoUpgrade array temporarily\n",
|
||||||
backup);
|
backup);
|
||||||
handle->noupgrade = alpm_list_add(handle->noupgrade,
|
handle->noupgrade = alpm_list_add(handle->noupgrade,
|
||||||
_alpm_backup_file(backup));
|
backup);
|
||||||
handle->noupgrade = alpm_list_add(handle->noupgrade,
|
|
||||||
backup);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
17
pactest/tests/upgrade026.py
Normal file
17
pactest/tests/upgrade026.py
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
self.description = "Upgrade a package, with a file leaving the pkg but staying in 'backup'"
|
||||||
|
|
||||||
|
lp = pmpkg("dummy")
|
||||||
|
lp.files = ["etc/dummy.conf*"]
|
||||||
|
lp.backup = ["etc/dummy.conf"]
|
||||||
|
self.addpkg2db("local", lp)
|
||||||
|
|
||||||
|
p = pmpkg("dummy", "1.0-2")
|
||||||
|
p.backup = ["etc/dummy.conf"]
|
||||||
|
self.addpkg(p)
|
||||||
|
|
||||||
|
self.args = "-U %s" % p.filename()
|
||||||
|
|
||||||
|
self.addrule("PKG_VERSION=dummy|1.0-2")
|
||||||
|
self.addrule("FILE_PACSAVE=etc/dummy.conf")
|
||||||
|
self.addrule("!FILE_PACNEW=etc/dummy.conf")
|
||||||
|
self.addrule("FILE_EXIST=etc/dummy.conf")
|
Loading…
Reference in New Issue
Block a user