diff --git a/menu/cbs/menu_cbs_ok.c b/menu/cbs/menu_cbs_ok.c index f4e8989c61..827913c957 100644 --- a/menu/cbs/menu_cbs_ok.c +++ b/menu/cbs/menu_cbs_ok.c @@ -926,7 +926,7 @@ static int action_ok_remap_file_save_game(const char *path, return 0; } -static int action_ok_path_use_directory(const char *path, +int action_ok_path_use_directory(const char *path, const char *label, unsigned type, size_t idx, size_t entry_idx) { return menu_entry_pathdir_set_value(0, NULL); diff --git a/menu/cbs/menu_cbs_select.c b/menu/cbs/menu_cbs_select.c index 54082cd438..4a49dd79f2 100644 --- a/menu/cbs/menu_cbs_select.c +++ b/menu/cbs/menu_cbs_select.c @@ -51,6 +51,12 @@ static int action_select_default(const char *path, const char *label, unsigned t return ret; } +static int action_select_path_use_directory(const char *path, + const char *label, unsigned type, size_t idx) +{ + return action_ok_path_use_directory(path, label, type, idx, 0 /* unused */); +} + static int action_select_directory_stub(const char *path, const char *label, unsigned type, size_t idx) { @@ -99,8 +105,10 @@ static int menu_cbs_init_bind_select_compare_type( case MENU_FILE_DIRECTORY: cbs->action_select = action_select_directory; break; - case MENU_FILE_PATH: case MENU_FILE_USE_DIRECTORY: + cbs->action_select = action_select_path_use_directory; + break; + case MENU_FILE_PATH: cbs->action_select = action_select_directory_stub; break; default: diff --git a/menu/menu_cbs.h b/menu/menu_cbs.h index 7d4a2b38eb..4122eeda27 100644 --- a/menu/menu_cbs.h +++ b/menu/menu_cbs.h @@ -33,6 +33,9 @@ extern char core_updater_path[PATH_MAX_LENGTH]; /* Function callbacks */ +int action_ok_path_use_directory(const char *path, + const char *label, unsigned type, size_t idx, size_t entry_idx); + int action_ok_directory_push(const char *path, const char *label, unsigned type, size_t idx, size_t entry_idx);