1
0
Fork 0
forked from len0rd/rockbox

Fixed associate problem with file extensions (.info files matched .nfo extension)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7456 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Henrik Backe 2005-09-02 15:05:35 +00:00
parent acf14e0569
commit b2473d58ab
14 changed files with 50 additions and 49 deletions

View file

@ -240,7 +240,7 @@ int ft_load(struct tree_context* c, const char* tempdir)
dptr->attr = entry->attribute;
/* check for known file types */
if ( !(dptr->attr & ATTR_DIRECTORY) && (len > 4) )
if ( !(dptr->attr & ATTR_DIRECTORY) )
dptr->attr |= filetype_get_attr(entry->d_name);
#ifdef BOOTFILE

View file

@ -209,17 +209,18 @@ bool filetype_supported(int attr)
}
/* get the "dynamic" attribute for an extension */
int filetype_get_attr(const char* name)
int filetype_get_attr(char* name)
{
int i;
char *cp;
for (i=0; i < cnt_exttypes; i++)
{
if (exttypes[i].extension)
{
if (!strcasecmp(&name[strlen(name)-
strlen(exttypes[i].extension)],
exttypes[i].extension))
cp=strrchr(name,'.');
if (cp) cp++;
if ((!strcasecmp(cp,exttypes[i].extension)) && (cp))
{
return ((((unsigned long)exttypes[i].type -
(unsigned long)&filetypes[0]) /

View file

@ -23,7 +23,7 @@
#include <tree.h>
#include <menu.h>
int filetype_get_attr(const char*);
int filetype_get_attr(char*);
#ifdef HAVE_LCD_BITMAP
const char* filetype_get_icon(int);
#else

View file

@ -68,30 +68,30 @@
/* a table for the know file types */
const struct filetype filetypes[] = {
{ ".mp3", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ ".mp2", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ ".mpa", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ "mp3", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ "mp2", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ "mpa", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
#if CONFIG_CODEC == SWCODEC
/* Temporary hack to allow playlist creation */
{ ".mp1", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ ".ogg", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ ".wma", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ ".wav", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ ".flac", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ ".ac3", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ ".a52", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ ".mpc", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ ".wv", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ "mp1", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ "ogg", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ "wma", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ "wav", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ "flac", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ "ac3", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ "a52", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ "mpc", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
{ "wv", TREE_ATTR_MPA, Icon_Audio, VOICE_EXT_MPA },
#endif
{ ".m3u", TREE_ATTR_M3U, Icon_Playlist, LANG_PLAYLIST },
{ ".cfg", TREE_ATTR_CFG, Icon_Config, VOICE_EXT_CFG },
{ ".wps", TREE_ATTR_WPS, Icon_Wps, VOICE_EXT_WPS },
{ ".lng", TREE_ATTR_LNG, Icon_Language, LANG_LANGUAGE },
{ ".rock",TREE_ATTR_ROCK,Icon_Plugin, VOICE_EXT_ROCK },
{ "m3u", TREE_ATTR_M3U, Icon_Playlist, LANG_PLAYLIST },
{ "cfg", TREE_ATTR_CFG, Icon_Config, VOICE_EXT_CFG },
{ "wps", TREE_ATTR_WPS, Icon_Wps, VOICE_EXT_WPS },
{ "lng", TREE_ATTR_LNG, Icon_Language, LANG_LANGUAGE },
{ "rock",TREE_ATTR_ROCK,Icon_Plugin, VOICE_EXT_ROCK },
#ifdef HAVE_LCD_BITMAP
{ ".fnt", TREE_ATTR_FONT,Icon_Font, VOICE_EXT_FONT },
{ "fnt", TREE_ATTR_FONT,Icon_Font, VOICE_EXT_FONT },
#endif
{ ".bmark",TREE_ATTR_BMARK, Icon_Bookmark, VOICE_EXT_BMARK },
{ "bmark",TREE_ATTR_BMARK, Icon_Bookmark, VOICE_EXT_BMARK },
#ifdef BOOTFILE_EXT
{ BOOTFILE_EXT, TREE_ATTR_MOD, Icon_Firmware, VOICE_EXT_AJZ },
#endif /* #ifndef SIMULATOR */
@ -1375,15 +1375,15 @@ static bool add_dir(char* dirname, int len, int fd)
}
else {
int x = strlen(entry->d_name);
int xl;
unsigned int i;
char *cp;
/* add all supported audio files to playlists */
for (i=0; i < sizeof(filetypes); i++) {
if (filetypes[i].tree_attr == TREE_ATTR_MPA) {
xl=strlen(filetypes[i].extension);
if (!strcasecmp(&entry->d_name[x-xl],
filetypes[i].extension))
cp=strrchr(entry->d_name,'.');
if (cp) cp++;
if ((!strcasecmp(cp,filetypes[i].extension)) && (cp))
{
char buf[8];
write(fd, dirname, strlen(dirname));

View file

@ -88,7 +88,7 @@
#define CONFIG_LCD LCD_SSD1815
#define BOOTFILE_EXT ".ajz"
#define BOOTFILE "ajbrec" BOOTFILE_EXT
#define BOOTFILE_EXT "ajz"
#define BOOTFILE "ajbrec." BOOTFILE_EXT
#endif /* SIMULATOR */

View file

@ -94,8 +94,8 @@
/* Define this if you have adjustable CPU frequency */
#define HAVE_ADJUSTABLE_CPU_FREQ
#define BOOTFILE_EXT ".iriver"
#define BOOTFILE "rockbox" BOOTFILE_EXT
#define BOOTFILE_EXT "iriver"
#define BOOTFILE "rockbox." BOOTFILE_EXT
#endif

View file

@ -90,8 +90,8 @@
/* Define this if you have adjustable CPU frequency */
#define HAVE_ADJUSTABLE_CPU_FREQ
#define BOOTFILE_EXT ".iriver"
#define BOOTFILE "rockbox" BOOTFILE_EXT
#define BOOTFILE_EXT "iriver"
#define BOOTFILE "rockbox." BOOTFILE_EXT
#endif

View file

@ -85,8 +85,8 @@
/* Define this if you have adjustable CPU frequency */
#define HAVE_ADJUSTABLE_CPU_FREQ
#define BOOTFILE_EXT ".iriver"
#define BOOTFILE "rockbox" BOOTFILE_EXT
#define BOOTFILE_EXT "iriver"
#define BOOTFILE "rockbox." BOOTFILE_EXT
/* Define this if you can control the S/PDIF power */
#define HAVE_SPDIF_POWER

View file

@ -77,7 +77,7 @@
/* Define this if you have adjustable CPU frequency */
#define HAVE_ADJUSTABLE_CPU_FREQ
#define BOOTFILE_EXT ".iaudio"
#define BOOTFILE "rockbox" BOOTFILE_EXT
#define BOOTFILE_EXT "iaudio"
#define BOOTFILE "rockbox." BOOTFILE_EXT
#endif

View file

@ -99,7 +99,7 @@
/* define this if the unit can be powered or charged via USB */
#define HAVE_USB_POWER
#define BOOTFILE_EXT ".ajz"
#define BOOTFILE "ajbrec" BOOTFILE_EXT
#define BOOTFILE_EXT "ajz"
#define BOOTFILE "ajbrec." BOOTFILE_EXT
#endif /* SIMULATOR */

View file

@ -86,7 +86,7 @@
/* define this if the unit can be powered or charged via USB */
#define HAVE_USB_POWER
#define BOOTFILE_EXT ".ajz"
#define BOOTFILE "ajbrec" BOOTFILE_EXT
#define BOOTFILE_EXT "ajz"
#define BOOTFILE "ajbrec." BOOTFILE_EXT
#endif /* SIMULATOR */

View file

@ -75,7 +75,7 @@
#define CONFIG_LCD LCD_SSD1801
#define BOOTFILE_EXT ".mod"
#define BOOTFILE "archos" BOOTFILE_EXT
#define BOOTFILE_EXT "mod"
#define BOOTFILE "archos." BOOTFILE_EXT
#endif /* SIMULATOR */

View file

@ -79,7 +79,7 @@
#define CONFIG_LCD LCD_SSD1815
#define BOOTFILE_EXT ".ajz"
#define BOOTFILE "ajbrec" BOOTFILE_EXT
#define BOOTFILE_EXT "ajz"
#define BOOTFILE "ajbrec." BOOTFILE_EXT
#endif /* SIMULATOR */

View file

@ -88,7 +88,7 @@
#define CONFIG_LCD LCD_SSD1815
#define BOOTFILE_EXT ".ajz"
#define BOOTFILE "ajbrec" BOOTFILE_EXT
#define BOOTFILE_EXT "ajz"
#define BOOTFILE "ajbrec." BOOTFILE_EXT
#endif /* SIMULATOR */