summaryrefslogtreecommitdiff
path: root/lib/libalpm/pkghash.c
Commit message (Collapse)AuthorAge
* Actually remove packages from pkghash on removalAllan McRae2011-02-04
| | | | | | | | Fully removes a package from the hash. Also unify prototype with removal from an alpm_list_t, fixing issues when removing a package from the pkgcache. Signed-off-by: Allan McRae <allan@archlinux.org>
* Refactor finding position for new hash entryAllan McRae2011-02-04
| | | | Signed-off-by: Allan McRae <allan@archlinux.org>
* Rehash efficientlyAllan McRae2011-02-04
| | | | | | | Rehash without recreating the hash table list or reallocating the memory for holding the list nodes. Signed-off-by: Allan McRae <allan@archlinux.org>
* Slightly more efficient rehash size selectionAllan McRae2011-02-04
| | | | | | | | | While probably still not optimal in terms of everyday usage in pacman, this reduces the absolute size increase to "more reasonable" levels. For databases greater than 5000 in size, the minimum size increase is used which is still on the order of a 10% increase. Signed-off-by: Allan McRae <allan@archlinux.org>
* Error handling for maximum database sizeAllan McRae2011-02-04
| | | | | | | | Check that the requested size of a pkghash is not beyond the maximum prime. Also check for successful creation of a new hash before rehashing. Signed-off-by: Allan McRae <allan@archlinux.org>
* Implement a quick and dirty rehash functionDan McGee2011-02-04
| | | | | | | | This allows us to get through the rehash required by smoke001 and pass all pactests. It is by no means the best or most efficient implementation but it does do the job. Signed-off-by: Dan McGee <dan@archlinux.org>
* Add a hash table for holding packagesAllan McRae2011-02-04
Signed-off-by: Allan McRae <allan@archlinux.org>