index : pacman | |
Archlinux32 fork of pacman | gitolite user |
summaryrefslogtreecommitdiff |
-rw-r--r-- | lib/libalpm/sync.c | 7 |
diff --git a/lib/libalpm/sync.c b/lib/libalpm/sync.c index d3fe238d..11bbcc3a 100644 --- a/lib/libalpm/sync.c +++ b/lib/libalpm/sync.c @@ -590,6 +590,13 @@ int sync_commit(pmtrans_t *trans, pmdb_t *db_local) /* replace old's name with new's name in the requiredby's dependency list */ PMList *m; pmpkg_t *depender = db_get_pkgfromcache(db_local, k->data); + if(depender == NULL) { + /* If the depending package no longer exists in the local db, + * then it must have ALSO conflicted with sync->pkg. If + * that's the case, then we don't have anything to propagate + * here. */ + continue; + } for(m = depender->depends; m; m = m->next) { if(!strcmp(m->data, old->name)) { FREE(m->data); |