29 lines
862 B
Diff
29 lines
862 B
Diff
|
--- rpm-4.4.2/lib/transaction.c.ghostconflicts 2005-06-11 15:37:34.000000000 -0400
|
||
|
+++ rpm-4.4.2/lib/transaction.c 2005-11-28 13:25:25.000000000 -0500
|
||
|
@@ -165,6 +165,7 @@
|
||
|
for (i = 0; i < sharedCount; i++, shared++) {
|
||
|
int otherFileNum, fileNum;
|
||
|
int isCfgFile;
|
||
|
+ int isGhostFile;
|
||
|
|
||
|
otherFileNum = shared->otherFileNum;
|
||
|
(void) rpmfiSetFX(otherFi, otherFileNum);
|
||
|
@@ -177,6 +178,7 @@
|
||
|
FColor &= tscolor;
|
||
|
|
||
|
isCfgFile = ((rpmfiFFlags(otherFi) | rpmfiFFlags(fi)) & RPMFILE_CONFIG);
|
||
|
+ isGhostFile = ((rpmfiFFlags(otherFi) & RPMFILE_GHOST) && (rpmfiFFlags(fi) & RPMFILE_GHOST));
|
||
|
|
||
|
#ifdef DYING
|
||
|
/* XXX another tedious segfault, assume file state normal. */
|
||
|
@@ -187,6 +189,9 @@
|
||
|
if (XFA_SKIPPING(fi->actions[fileNum]))
|
||
|
continue;
|
||
|
|
||
|
+ if (isGhostFile)
|
||
|
+ continue;
|
||
|
+
|
||
|
if (rpmfiCompare(otherFi, fi)) {
|
||
|
int rConflicts;
|
||
|
|