summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
41a8012)
If the two InstalledPackageIds are the same, then the packages are
interchangeable and we don't need to explicitly remove one of them.
in listToFM shadowed
where
check (shadowed,pkgmap) pkg
in listToFM shadowed
where
check (shadowed,pkgmap) pkg
- | Just oldpkg <- lookupUFM pkgmap (packageConfigId pkg)
- = let
- ipid_new = installedPackageId pkg
- ipid_old = installedPackageId oldpkg
- in
- if ipid_old `elem` preferred
+ | Just oldpkg <- lookupUFM pkgmap (packageConfigId pkg),
+ let
+ ipid_new = installedPackageId pkg
+ ipid_old = installedPackageId oldpkg,
+ --
+ ipid_old /= ipid_new
+ = if ipid_old `elem` preferred
then ( (ipid_new, ShadowedBy ipid_old) : shadowed, pkgmap )
else ( (ipid_old, ShadowedBy ipid_new) : shadowed, pkgmap' )
| otherwise
then ( (ipid_new, ShadowedBy ipid_old) : shadowed, pkgmap )
else ( (ipid_old, ShadowedBy ipid_new) : shadowed, pkgmap' )
| otherwise