1
0
mirror of https://github.com/moparisthebest/pacman synced 2024-08-13 17:03:46 -04:00
pacman/lib/libalpm
Allan McRae 717fdb8ee0 Add conflict for replacing owned empty directory
When two packages own an empty directory, pacman finds no conflict when
one of those packages wants to replace the directory with a file or a
symlink.  When it comes to actually extracting the new file/symlink,
pacman sees the directory is still there (we do not remove empty
directories if they are owned by a package) and refuses to extract.

Detect this potential conflict early and bail. Note that it is a
_potential_ conflict and not a guaranteed one as the other package owning
the directory could be updated or removed first which would remove
the conflict.  However, pacman currently can not sort package installation
order to ensure this, so this conflict requires manual upgrade ordering.

Signed-off-by: Allan McRae <allan@archlinux.org>
Signed-off-by: Dan McGee <dan@archlinux.org>
2012-07-10 08:29:37 -05:00
..
po Updates from Transifex 2012-04-07 10:13:37 -05:00
.gitignore Remove unnecessary entries from .gitignore files 2007-07-16 16:49:28 -04:00
add.c Ensure pre_upgrade scriptlet gets old package version 2012-05-04 11:41:40 -05:00
add.h Rename pmhandle_t to alpm_handle_t 2011-06-28 14:04:00 +10:00
alpm_list.c Fix rare segfault on package removal 2012-01-31 11:22:30 -06:00
alpm_list.h Convert package filelists to an array instead of linked list 2011-07-21 15:04:30 -05:00
alpm.c Initialize cURL library on first use 2011-09-28 13:01:03 -05:00
alpm.h Fix a handful of comment typos or misspellings 2012-02-06 22:12:11 -06:00
backup.c Allow fileconflict if unowned file moving into backup array 2011-07-14 15:34:04 -05:00
backup.h Allow fileconflict if unowned file moving into backup array 2011-07-14 15:34:04 -05:00
base64.c Update base64 PolarSSL code 2011-08-15 06:24:49 -05:00
base64.h Update base64 PolarSSL code 2011-08-15 06:24:49 -05:00
be_local.c Use _alpm_local_db_pkgpath in _cache_changelog_open 2011-09-30 11:08:49 -05:00
be_package.c Fix a potential memory leak in filelist creation 2012-03-05 11:44:34 -06:00
be_sync.c Introduce ALPM_BUFFER_SIZE constant 2011-10-27 14:59:24 -05:00
conflict.c Add conflict for replacing owned empty directory 2012-07-10 08:29:37 -05:00
conflict.h Convert package filelists to an array instead of linked list 2011-07-21 15:04:30 -05:00
db.c Fix bogus string cast in search debug message 2011-12-29 14:24:08 -06:00
db.h Revamp scriptlet path formation for scriptlets in local database 2011-09-30 10:55:58 -05:00
delta.c account for partial delta files in download size 2011-09-11 19:10:48 -05:00
delta.h Rename pmdelta_t to alpm_delta_t 2011-06-28 23:28:23 +10:00
deps.c Revert "Add -S --recursive operation" 2012-02-15 15:58:07 -06:00
deps.h Be more robust when copying package data 2011-08-19 11:09:57 -05:00
diskspace.c diskspace: ensure we match only full path components 2012-02-19 23:04:12 -06:00
diskspace.h Use more correct integer types in diskspace checks 2011-09-07 21:05:04 -05:00
dload.c Fix issues with unintialized variable value usage 2012-04-09 00:46:54 -05:00
dload.h Add missing #ifdef around cURL error code in download struct 2011-10-14 07:38:58 -05:00
error.c Attempt to fix up some of the brokenness around failed package loads 2011-08-08 19:42:52 -05:00
graph.c Rename pmgraph_t to alpm_graph_t 2011-06-28 23:28:24 +10:00
graph.h Rename pmgraph_t to alpm_graph_t 2011-06-28 23:28:24 +10:00
group.c Rename internal functions with grp in their name 2011-06-29 15:52:33 +10:00
group.h Rename internal functions with grp in their name 2011-06-29 15:52:33 +10:00
handle.c Move default siglevel value from backend to frontend 2011-09-22 10:32:30 -05:00
handle.h Initialize cURL library on first use 2011-09-28 13:01:03 -05:00
log.c Prefix _alpm_errno_t members with ALPM 2011-07-02 02:01:39 +10:00
log.h Rename pmloglevel_t to alpm_loglevel_t 2011-06-28 23:28:24 +10:00
Makefile.am Add sha2 (sha256) routines from PolarSSL 2011-08-15 07:07:13 -05:00
md5.c Update MD5 routines with changes from PolarSSL 2011-08-11 20:17:21 -05:00
md5.h Update MD5 routines with changes from PolarSSL 2011-08-11 20:17:21 -05:00
package.c Revert "libalpm: compare pkgname with strcoll" 2011-09-27 20:24:04 -05:00
package.h Pass package signature data up one more level 2011-09-20 10:23:11 -05:00
pkghash.c alpm_list: use malloc instead of calloc 2011-09-27 17:49:27 -05:00
pkghash.h Rename pmpkghash_t to alpm_pkghash_t 2011-06-28 23:28:24 +10:00
rawstr.c include util.h in rawstr.c 2011-07-05 22:36:40 -05:00
remove.c Update copyright on changed files since beginning of year 2012-01-18 22:25:27 -06:00
remove.h Be smarter about running ldconfig during removal transactions 2011-09-19 13:18:42 -05:00
sha2.c Add sha2 (sha256) routines from PolarSSL 2011-08-15 07:07:13 -05:00
sha2.h Add sha2 (sha256) routines from PolarSSL 2011-08-15 07:07:13 -05:00
signing.c Fix issues with unintialized variable value usage 2012-04-09 00:46:54 -05:00
signing.h signing: add a process and retry loop for database signatures 2011-09-20 10:23:11 -05:00
sync.c sync: fix crash on failed downloads 2012-04-07 10:13:38 -05:00
sync.h Rename pmhandle_t to alpm_handle_t 2011-06-28 14:04:00 +10:00
trans.c Refactor _alpm_runscriptlet() 2011-09-30 10:55:58 -05:00
trans.h Refactor _alpm_runscriptlet() 2011-09-30 10:55:58 -05:00
util.c Update copyright on changed files since beginning of year 2012-01-18 22:25:27 -06:00
util.h Introduce ALPM_BUFFER_SIZE constant 2011-10-27 14:59:24 -05:00
version.c vercmp: ensure 2.0a and 2.0.a do not compare equal 2011-08-23 01:49:29 -05:00