From 7144e38b5f76016512009fe47325e6fd1f7211ae Mon Sep 17 00:00:00 2001 From: Thom Johansen Date: Sun, 6 Mar 2005 18:13:16 +0000 Subject: "Open With" menu duplicate entry bug fixed. Only plugins that match the target file extensions are now listed. Patch by Patr3ck. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6157 a1c6a512-1295-4272-9138-f99709370657 --- apps/filetypes.c | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) (limited to 'apps/filetypes.c') diff --git a/apps/filetypes.c b/apps/filetypes.c index 68540802b0..8c19cdd32c 100644 --- a/apps/filetypes.c +++ b/apps/filetypes.c @@ -220,21 +220,28 @@ int filetype_get_attr(const char* name) } /* fill a menu list with viewers (used in onplay.c) */ -int filetype_load_menu(struct menu_item* menu,int max_items) +int filetype_load_menu(struct menu_item* menu, int max_items, + char *filename) { int i; int cnt=0; - for (i=0; i < cnt_filetypes; i++) + for (i=0; i < cnt_exttypes; i++) { - if (filetypes[i].plugin) + if(exttypes[i].type->plugin) { - menu[cnt].desc = filetypes[i].plugin; - cnt++; - if (cnt == max_items) - break; + if (strcasecmp(&filename[strlen(filename)- + strlen(exttypes[i].extension)], + exttypes[i].extension) == 0) + { + menu[cnt].desc = exttypes[i].type->plugin; + cnt++; + if (cnt == max_items) + break; + } } } + return cnt; } -- cgit v1.2.3