# HG changeset patch # User zas_ # Date 1209942216 0 # Node ID 5ded871a09688a2789e2a964ba95efc5fcb4903f # Parent 9dc0513837b5ce2cd7afdafb65073c79c782a7fa Minor cleanup. diff -r 9dc0513837b5 -r 5ded871a0968 src/view_file_icon.c --- a/src/view_file_icon.c Sun May 04 21:54:20 2008 +0000 +++ b/src/view_file_icon.c Sun May 04 23:03:36 2008 +0000 @@ -783,10 +783,10 @@ { IconData *id = work->data; work = work->next; - if (vficon_index_by_id(vf, id) < 0) - { - VFICON_INFO(vf, selection) = g_list_remove(VFICON_INFO(vf, selection), id); - } + + if (vficon_index_by_id(vf, id) >= 0) continue; + + VFICON_INFO(vf, selection) = g_list_remove(VFICON_INFO(vf, selection), id); } } @@ -801,9 +801,10 @@ while (work) { IconData *id = work->data; + work = work->next; + VFICON_INFO(vf, selection) = g_list_append(VFICON_INFO(vf, selection), id); - vficon_selection_add(vf, work->data, SELECTION_SELECTED, NULL); - work = work->next; + vficon_selection_add(vf, id, SELECTION_SELECTED, NULL); } vficon_send_update(vf); @@ -816,8 +817,10 @@ work = VFICON_INFO(vf, selection); while (work) { - vficon_selection_remove(vf, work->data, SELECTION_SELECTED, NULL); + IconData *id = work->data; work = work->next; + + vficon_selection_remove(vf, id, SELECTION_SELECTED, NULL); } g_list_free(VFICON_INFO(vf, selection));