forked from len0rd/rockbox
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
This commit is contained in:
parent
abd75a17d1
commit
7373cf518f
8 changed files with 626 additions and 497 deletions
|
|
@ -351,10 +351,10 @@ static int fill_path_compinfo(struct pathwalk *walkp,
|
|||
compinfo->length = compp->length;
|
||||
compinfo->attr = compp->attr;
|
||||
compinfo->filesize = walkp->filesize;
|
||||
if (!(walkp->callflags & FF_SELFINFO))
|
||||
compinfo->parentinfo = (compp->nextp ?: compp)->info;
|
||||
else
|
||||
if (walkp->callflags & FF_INFO)
|
||||
compinfo->info = compp->info;
|
||||
if (walkp->callflags & FF_PARENTINFO)
|
||||
compinfo->parentinfo = (compp->nextp ?: compp)->info;
|
||||
}
|
||||
|
||||
return rc;
|
||||
|
|
@ -571,9 +571,9 @@ int open_stream_internal(const char *path, unsigned int callflags,
|
|||
FILE_ERROR(path ? ENOENT : EFAULT, -1);
|
||||
}
|
||||
|
||||
/* if !compinfo, then the result of this check is not visible anyway */
|
||||
/* if !compinfo then these cannot be returned anyway */
|
||||
if (!compinfo)
|
||||
callflags &= ~FF_CHECKPREFIX;
|
||||
callflags &= ~(FF_INFO | FF_PARENTINFO | FF_CHECKPREFIX);
|
||||
|
||||
/* This lets it be passed quietly to directory scanning */
|
||||
stream->flags = callflags & FF_MASK;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue