rendered paste bodyIndex: apps/tagcache.c
===================================================================
--- apps/tagcache.c (revision 16593)
+++ apps/tagcache.c (working copy)
@@ -3794,10 +3794,10 @@
# ifdef HAVE_DIRCACHE
while (dircache_is_initializing())
sleep(1);
+
+ dircache_set_appflag(DIRCACHE_APPFLAG_TAGCACHE);
# endif
- dircache_set_appflag(DIRCACHE_APPFLAG_TAGCACHE);
-
logf("loading tagcache to ram...");
fd = open(TAGCACHE_FILE_MASTER, O_RDONLY);
Index: apps/playback.c
===================================================================
--- apps/playback.c (revision 16593)
+++ apps/playback.c (working copy)
@@ -570,7 +570,7 @@
if (!filename)
filename = "No file!";
-#ifdef HAVE_TC_RAMCACHE
+#if defined(HAVE_TC_RAMCACHE) && defined(HAVE_DIRCACHE)
if (tagcache_fill_tags(&temp_id3, filename))
return &temp_id3;
#endif
Index: firmware/export/config.h
===================================================================
--- firmware/export/config.h (revision 16593)
+++ firmware/export/config.h (working copy)
@@ -308,8 +308,10 @@
/* Enable the directory cache and tagcache in RAM if we have
* plenty of RAM. Both features can be enabled independently. */
#if ((defined(MEMORYSIZE) && (MEMORYSIZE > 8)) || MEM > 8) && \
- !defined(BOOTLOADER) && !defined(SANSA_E200) && !defined(SANSA_C200)
+ !defined(BOOTLOADER)
+#if !defined(SANSA_E200) && !defined(SANSA_C200)
#define HAVE_DIRCACHE
+#endif
#ifdef HAVE_TAGCACHE
#define HAVE_TC_RAMCACHE
#endif