From 20bc58dc9ad8feb927e0c805f9dbfb5b6a024ccd Mon Sep 17 00:00:00 2001 From: Miika Pekkarinen Date: Sun, 9 Oct 2005 07:32:23 +0000 Subject: [PATCH] Do not try to read from dircache if directory was opened when cache was not available. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7602 a1c6a512-1295-4272-9138-f99709370657 --- firmware/common/dircache.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/firmware/common/dircache.c b/firmware/common/dircache.c index 4cd01ec924..ca07a35989 100644 --- a/firmware/common/dircache.c +++ b/firmware/common/dircache.c @@ -743,10 +743,8 @@ struct dircache_entry* readdir_cached(DIRCACHED* dir) if (!dir->busy) return NULL; - if (!dircache_initialized) + if (dir->regulardir != NULL) { - if (dir->regulardir == NULL) - return NULL; regentry = readdir(dir->regulardir); if (regentry == NULL) return NULL; @@ -789,8 +787,11 @@ struct dircache_entry* readdir_cached(DIRCACHED* dir) int closedir_cached(DIRCACHED* dir) { + if (!dir->busy) + return -1; + dir->busy=false; - if (!dircache_initialized && dir->regulardir != NULL) + if (dir->regulardir != NULL) return closedir(dir->regulardir); return 0;