mirror of
https://github.com/moparisthebest/pacman
synced 2024-11-11 03:54:59 -05:00
Simplify alpm_list_previous
We can readily detect the first node in a list by checking if node->prev->next is NULL. So there is no need to pass the head of the list to this function and its prototype now looks like all the other item accessors. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
parent
97103f860d
commit
24324ff0e1
@ -547,11 +547,10 @@ inline alpm_list_t SYMEXPORT *alpm_list_next(const alpm_list_t *node)
|
|||||||
*
|
*
|
||||||
* @return the previous element, or NULL when no previous element exist
|
* @return the previous element, or NULL when no previous element exist
|
||||||
*/
|
*/
|
||||||
inline alpm_list_t SYMEXPORT *alpm_list_previous(const alpm_list_t *list,
|
inline alpm_list_t SYMEXPORT *alpm_list_previous(const alpm_list_t *list)
|
||||||
const alpm_list_t *node)
|
|
||||||
{
|
{
|
||||||
if(node && node != list) {
|
if(list && list->prev->next) {
|
||||||
return node->prev;
|
return list->prev;
|
||||||
} else {
|
} else {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
@ -69,7 +69,7 @@ alpm_list_t *alpm_list_reverse(alpm_list_t *list);
|
|||||||
/* item accessors */
|
/* item accessors */
|
||||||
alpm_list_t *alpm_list_nth(const alpm_list_t *list, size_t n);
|
alpm_list_t *alpm_list_nth(const alpm_list_t *list, size_t n);
|
||||||
alpm_list_t *alpm_list_next(const alpm_list_t *list);
|
alpm_list_t *alpm_list_next(const alpm_list_t *list);
|
||||||
alpm_list_t *alpm_list_previous(const alpm_list_t *list, const alpm_list_t *node);
|
alpm_list_t *alpm_list_previous(const alpm_list_t *list);
|
||||||
alpm_list_t *alpm_list_last(const alpm_list_t *list);
|
alpm_list_t *alpm_list_last(const alpm_list_t *list);
|
||||||
void *alpm_list_getdata(const alpm_list_t *entry);
|
void *alpm_list_getdata(const alpm_list_t *entry);
|
||||||
|
|
||||||
|
@ -329,7 +329,7 @@ int _alpm_upgraderemove_package(alpm_handle_t *handle,
|
|||||||
_alpm_log(handle, ALPM_LOG_DEBUG, "removing %ld files\n", (unsigned long)filenum);
|
_alpm_log(handle, ALPM_LOG_DEBUG, "removing %ld files\n", (unsigned long)filenum);
|
||||||
|
|
||||||
/* iterate through the list backwards, unlinking files */
|
/* iterate through the list backwards, unlinking files */
|
||||||
for(lp = alpm_list_last(files); lp; lp = alpm_list_previous(files, lp)) {
|
for(lp = alpm_list_last(files); lp; lp = alpm_list_previous(lp)) {
|
||||||
unlink_file(handle, oldpkg, lp->data, skip_remove, 0);
|
unlink_file(handle, oldpkg, lp->data, skip_remove, 0);
|
||||||
}
|
}
|
||||||
FREELIST(skip_remove);
|
FREELIST(skip_remove);
|
||||||
@ -406,7 +406,7 @@ int _alpm_remove_packages(alpm_handle_t *handle)
|
|||||||
pkg_count, (pkg_count - targcount + 1));
|
pkg_count, (pkg_count - targcount + 1));
|
||||||
|
|
||||||
/* iterate through the list backwards, unlinking files */
|
/* iterate through the list backwards, unlinking files */
|
||||||
for(lp = alpm_list_last(files); lp; lp = alpm_list_previous(files, lp)) {
|
for(lp = alpm_list_last(files); lp; lp = alpm_list_previous(lp)) {
|
||||||
int percent;
|
int percent;
|
||||||
unlink_file(handle, info, lp->data, NULL, trans->flags & ALPM_TRANS_FLAG_NOSAVE);
|
unlink_file(handle, info, lp->data, NULL, trans->flags & ALPM_TRANS_FLAG_NOSAVE);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user