diff --git a/menu/menu_database.c b/menu/menu_database.c index 816f93b2aa..3e26caabf4 100644 --- a/menu/menu_database.c +++ b/menu/menu_database.c @@ -54,9 +54,13 @@ void menu_database_free(menu_handle_t *menu) menu_database_playlist_free(menu); } -bool menu_database_realloc(menu_handle_t *menu, const char *path, +bool menu_database_realloc(const char *path, bool force) { + menu_handle_t *menu = menu_driver_resolve(); + if (!menu) + return false; + if (!strcmp(menu->db_playlist_file, path) && !force) return true; diff --git a/menu/menu_database.h b/menu/menu_database.h index 41ba3c7b40..84c035f682 100644 --- a/menu/menu_database.h +++ b/menu/menu_database.h @@ -32,7 +32,7 @@ int menu_database_populate_query(file_list_t *list, const char *path, void menu_database_free(menu_handle_t *menu); -bool menu_database_realloc(menu_handle_t *menu, const char *path, +bool menu_database_realloc(const char *path, bool force); #ifdef __cplusplus diff --git a/menu/menu_entries_cbs.c b/menu/menu_entries_cbs.c index 652ca4a465..62fca6121e 100644 --- a/menu/menu_entries_cbs.c +++ b/menu/menu_entries_cbs.c @@ -1003,7 +1003,7 @@ static int deferred_push_rdb_entry_detail(void *data, void *userdata, fill_pathname_join(path_rdl, g_settings.content_database, path_base, sizeof(path_rdl)); - menu_database_realloc(driver.menu, path_rdl, false); + menu_database_realloc(path_rdl, false); playlist = menu->db_playlist;