Detect attempts to replace directory symlink to directory in package
authorPanu Matilainen <pmatilai@redhat.com>
Fri, 24 Aug 2012 10:36:52 +0000 (13:36 +0300)
committerPanu Matilainen <pmatilai@redhat.com>
Fri, 24 Aug 2012 10:36:52 +0000 (13:36 +0300)
commita7a06ec88f7183953499456afc4c41aee6bd7c14
tree12488b46fe7eff2fc50e895ac47dfb6a0dbe3385
parent00d82f1322c6dbf471f61bca7a5cc347fc2fca0a
Detect attempts to replace directory symlink to directory in package

- Rpm cannot currently *correctly* deal with directory symlink changing
  to a directory through updates, detect early and abort with conflicts
  instead of proceeding with known-broken results: previously these
  would seemingly succeed but without actually doing the requested
  changes, and leaving orphans on the disk. Far less evil than the
  directory replacement failure but incorrect anyway.
- Same %pretrans wackiness as with directory replacements applies here.
- Adjust test-suite to match the new behavior.
- It's possible there are packages that have been relying on the former
  broken "success" results, so this might need further fine-tuning...
lib/transaction.c
tests/rpmconflict.at
tests/rpmreplace.at