Rework function for finding temperature profiles to be able to search for any pattern

This commit is contained in:
Mario Hüttel 2021-05-16 19:57:08 +02:00
parent 6322c3728b
commit afb8e93b13

View File

@ -382,7 +382,7 @@ static void delete_file_list_entry(void *obj)
free(obj); free(obj);
} }
static SlList *load_temp_profile_list_from_sdcard(int *error) static SlList *load_file_list_from_sdcard(int *error, const char *file_pattern)
{ {
DIR directory; DIR directory;
FILINFO finfo; FILINFO finfo;
@ -392,7 +392,7 @@ static SlList *load_temp_profile_list_from_sdcard(int *error)
char *name; char *name;
/* find the frist file */ /* find the frist file */
fres = f_findfirst(&directory, &finfo, "/", "*.tpr"); fres = f_findfirst(&directory, &finfo, "/", file_pattern);
while (fres == FR_OK && finfo.fname[0]) { while (fres == FR_OK && finfo.fname[0]) {
name = malloc(strlen(finfo.fname) + 1); name = malloc(strlen(finfo.fname) + 1);
strcpy(name, finfo.fname); strcpy(name, finfo.fname);
@ -485,7 +485,7 @@ static void gui_menu_temp_profile_select(struct lcd_menu *menu, enum menu_entry_
sl_list_free_full(file_list, delete_file_list_entry); sl_list_free_full(file_list, delete_file_list_entry);
} }
file_list = load_temp_profile_list_from_sdcard(&file_error); file_list = load_file_list_from_sdcard(&file_error, "*.tpr");
currently_selected = 0u; currently_selected = 0u;
profile_ret_val = PL_RET_SUCCESS; profile_ret_val = PL_RET_SUCCESS;