summaryrefslogtreecommitdiffstats
path: root/lib/libalpm/sync.c
diff options
context:
space:
mode:
authorAllan McRae <allan@archlinux.org>2013-02-12 13:00:53 +0100
committerAllan McRae <allan@archlinux.org>2013-02-24 04:11:54 +0100
commit34749e177db5d4aafdb9f3de630c7ab193a0f36d (patch)
tree93d21fc0a0c170589acf19617e15cd9d9d8949d1 /lib/libalpm/sync.c
parent19754b34a36203266c4e02f29178084c77282efd (diff)
downloadpacman-34749e177db5d4aafdb9f3de630c7ab193a0f36d.tar.gz
pacman-34749e177db5d4aafdb9f3de630c7ab193a0f36d.tar.xz
Perform limited conflict checking with --force
Pacman currently bails when trying to extract a file over a directory when using --force. Instead of ignoring all conflict, perform the check and skip any file-file conflicts. Conflicts between directories and files are still flagged and cause the transation to abort. As a bonus, we now know about files changing packages when using --force, so we can skip removing them fixing upgrade046. Signed-off-by: Allan McRae <allan@archlinux.org>
Diffstat (limited to 'lib/libalpm/sync.c')
-rw-r--r--lib/libalpm/sync.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/libalpm/sync.c b/lib/libalpm/sync.c
index f7b956ca..204456d6 100644
--- a/lib/libalpm/sync.c
+++ b/lib/libalpm/sync.c
@@ -1241,7 +1241,7 @@ int _alpm_sync_commit(alpm_handle_t *handle, alpm_list_t **data)
trans->state = STATE_COMMITING;
/* fileconflict check */
- if(!(trans->flags & (ALPM_TRANS_FLAG_FORCE|ALPM_TRANS_FLAG_DBONLY))) {
+ if(!(trans->flags & ALPM_TRANS_FLAG_DBONLY)) {
EVENT(handle, ALPM_EVENT_FILECONFLICTS_START, NULL, NULL);
_alpm_log(handle, ALPM_LOG_DEBUG, "looking for file conflicts\n");