mirror of
https://github.com/moparisthebest/pacman
synced 2024-08-13 17:03:46 -04:00
Reduce unnecessary get_name() function calls
alpm_pkg_get_name() gives us little benefit in backend code besides a NULL check on the package passed in; we could do that ourself if necessary. By changing to direct references in the cases where we are sure we have a valid package, we save a function call each time we need a package name. This function can't be inlined because it is externally accessible. This cuts the calls to get_name() from 1.3 million times in a pacman -Qu operation to around 2400. Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
parent
748bc8ebd4
commit
0bc961a8be
@ -573,7 +573,7 @@ alpm_list_t SYMEXPORT *alpm_pkg_compute_requiredby(pmpkg_t *pkg)
|
||||
}
|
||||
pmpkg_t *cachepkg = i->data;
|
||||
if(_alpm_dep_edge(cachepkg, pkg)) {
|
||||
const char *cachepkgname = alpm_pkg_get_name(cachepkg);
|
||||
const char *cachepkgname = pkg->name;
|
||||
reqs = alpm_list_add(reqs, strdup(cachepkgname));
|
||||
}
|
||||
}
|
||||
@ -896,7 +896,7 @@ int _alpm_pkg_cmp(const void *p1, const void *p2)
|
||||
{
|
||||
pmpkg_t *pkg1 = (pmpkg_t *)p1;
|
||||
pmpkg_t *pkg2 = (pmpkg_t *)p2;
|
||||
return(strcmp(alpm_pkg_get_name(pkg1), alpm_pkg_get_name(pkg2)));
|
||||
return(strcmp(pkg1->name, pkg2->name));
|
||||
}
|
||||
|
||||
/* Test for existence of a package in a alpm_list_t*
|
||||
@ -915,7 +915,7 @@ pmpkg_t *_alpm_pkg_find(alpm_list_t *haystack, const char *needle)
|
||||
for(lp = haystack; lp; lp = lp->next) {
|
||||
pmpkg_t *info = lp->data;
|
||||
|
||||
if(info && strcmp(alpm_pkg_get_name(info), needle) == 0) {
|
||||
if(info && strcmp(info->name, needle) == 0) {
|
||||
return(info);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user