discomfitor pushed a commit to branch master. http://git.enlightenment.org/apps/empc.git/commit/?id=bd77f49f3c8eebffef3ee086a5abcfb038fe6d3c
commit bd77f49f3c8eebffef3ee086a5abcfb038fe6d3c Author: zmike <michael.blumenkra...@gmail.com> Date: Fri Feb 26 20:52:32 2016 -0500 remove broken list variable aliasing during apm update processing ref 2e101a73d501a1e11bc20d6e636872deef0d74b3 --- src/modules/auto_playlist_manager.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/src/modules/auto_playlist_manager.c b/src/modules/auto_playlist_manager.c index 4c10587..152bc10 100644 --- a/src/modules/auto_playlist_manager.c +++ b/src/modules/auto_playlist_manager.c @@ -202,7 +202,6 @@ static void run_adds(void) { char *file; - Eina_List *l; last_queue_length = empd_queue_length; while (adds) @@ -213,8 +212,7 @@ run_adds(void) Elm_Object_Item *item; Eina_Bool done = EINA_FALSE; - l = eina_list_data_get(adds); - file = eina_list_data_get(l); + file = eina_list_data_get(adds); a = strrchr(file, '/'); if (a) b = strchr(file, '/'); @@ -227,7 +225,7 @@ run_adds(void) if (a == b) { empd_empdd_list_info_call(empd_proxy, info_cb, file, file); - adds = eina_list_remove_list(adds, l); + adds = eina_list_remove_list(adds, adds); return; } @@ -264,16 +262,16 @@ run_adds(void) post_add(1, file); empd_empdd_add_id_list_call(empd_proxy, file, ss->song_pos + 1); done = EINA_TRUE; - while (eina_list_next(l)) + while (eina_list_next(adds)) { char *f2; pos++; - f2 = eina_list_data_get(eina_list_next(l)); + f2 = eina_list_data_get(eina_list_next(adds)); if (!is_same_path(file, a, f2, NULL)) break; empd_empdd_add_id_list_call(empd_proxy, file, ss->song_pos + pos); post_add(1, f2); - adds = eina_list_remove_list(adds, eina_list_next(l)); + adds = eina_list_remove_list(adds, eina_list_next(adds)); free(f2); } break; @@ -288,17 +286,17 @@ run_adds(void) /* sequentially append all songs from matching directory structure */ empd_empdd_add_list_call(empd_proxy, file); post_add(0, file); - while (eina_list_next(l)) + while (eina_list_next(adds)) { - f2 = eina_list_data_get(eina_list_next(l)); + f2 = eina_list_data_get(eina_list_next(adds)); if (!is_same_path(file, a, f2, NULL)) break; empd_empdd_add_list_call(empd_proxy, f2); post_add(0, f2); - adds = eina_list_remove_list(adds, eina_list_next(l)); + adds = eina_list_remove_list(adds, eina_list_next(adds)); free(f2); } } - adds = eina_list_remove_list(adds, l); + adds = eina_list_remove_list(adds, adds); free(file); } } --