summaryrefslogtreecommitdiff
path: root/firmware/common/file_internal.c
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2017-01-18 04:39:35 -0500
committerMichael Sevakis <jethead71@rockbox.org>2017-02-10 05:05:23 -0500
commit7373cf518f4d4c47f49693690c2ab8ec29bb8510 (patch)
tree0a3c025749be24561e952078e83c5f2e8b838900 /firmware/common/file_internal.c
parentabd75a17d18c0779b59f64a612f9226b62af5823 (diff)
downloadrockbox-7373cf518f4d4c47f49693690c2ab8ec29bb8510.tar.gz
rockbox-7373cf518f4d4c47f49693690c2ab8ec29bb8510.zip
Restore dircache hookup in the database ramcache.
Do a few other changes to dircache and file code flags to accomodate its demands. Change-Id: I4742a54e8cfbe4d8b9cffb75faaf920dd907cf8a
Diffstat (limited to 'firmware/common/file_internal.c')
-rw-r--r--firmware/common/file_internal.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/firmware/common/file_internal.c b/firmware/common/file_internal.c
index 75fb21e8a6..8fee802f6f 100644
--- a/firmware/common/file_internal.c
+++ b/firmware/common/file_internal.c
@@ -351,10 +351,10 @@ static int fill_path_compinfo(struct pathwalk *walkp,
351 compinfo->length = compp->length; 351 compinfo->length = compp->length;
352 compinfo->attr = compp->attr; 352 compinfo->attr = compp->attr;
353 compinfo->filesize = walkp->filesize; 353 compinfo->filesize = walkp->filesize;
354 if (!(walkp->callflags & FF_SELFINFO)) 354 if (walkp->callflags & FF_INFO)
355 compinfo->parentinfo = (compp->nextp ?: compp)->info;
356 else
357 compinfo->info = compp->info; 355 compinfo->info = compp->info;
356 if (walkp->callflags & FF_PARENTINFO)
357 compinfo->parentinfo = (compp->nextp ?: compp)->info;
358 } 358 }
359 359
360 return rc; 360 return rc;
@@ -571,9 +571,9 @@ int open_stream_internal(const char *path, unsigned int callflags,
571 FILE_ERROR(path ? ENOENT : EFAULT, -1); 571 FILE_ERROR(path ? ENOENT : EFAULT, -1);
572 } 572 }
573 573
574 /* if !compinfo, then the result of this check is not visible anyway */ 574 /* if !compinfo then these cannot be returned anyway */
575 if (!compinfo) 575 if (!compinfo)
576 callflags &= ~FF_CHECKPREFIX; 576 callflags &= ~(FF_INFO | FF_PARENTINFO | FF_CHECKPREFIX);
577 577
578 /* This lets it be passed quietly to directory scanning */ 578 /* This lets it be passed quietly to directory scanning */
579 stream->flags = callflags & FF_MASK; 579 stream->flags = callflags & FF_MASK;