break;
/* Pre-existing modified config files need to be saved. */
- if (S_ISREG(FMode) && (FFlags & RPMFILE_CONFIG)) {
- int algo = 0;
- size_t diglen = 0;
- const unsigned char *digest;
- if ((digest = rpmfiFDigestIndex(fi, i, &algo, &diglen))) {
- unsigned char fdigest[diglen];
- char *fn = rpmfiFNIndex(fi, i);
- int modified = (!rpmDoDigest(algo, fn, 0, fdigest, NULL) &&
- memcmp(digest, fdigest, diglen));
- free(fn);
- if (modified) {
- rpmfsSetAction(fs, i, FA_BACKUP);
- break;
- }
- }
+ if (rpmfiConfigConflictIndex(fi, i)) {
+ rpmfsSetAction(fs, i, FA_BACKUP);
+ break;
}
/* Otherwise, we can just erase. */
AT_CLEANUP
# Erase modified config link
-# Broken, no backup taken
AT_SETUP([erase changed config link])
AT_KEYWORDS([install])
-AT_XFAIL_IF([test $RPM_XFAIL -gt 0])
AT_CHECK([
RPMDB_CLEAR
RPMDB_INIT