Lines Matching refs:dirs
45 * FF_dir FF_gnu with sfgetl/sfputl and trailing / on dirs (FF_dir_magic)
516 if (disc->dirs && *disc->dirs)
518 for (k = 0; disc->dirs[k]; k++);
519 if (k == 1 && streq(disc->dirs[0], "/"))
523 if (!(fp->dirs = vmnewof(fp->vm, 0, char*, 2 * k + 1, 0)))
540 if (*(s = disc->dirs[i]) == '/')
549 if (!(fp->dirs[q] = vmstrdup(fp->vm, b)))
552 (fp->dirs[q])[s - b] = 0;
558 if (!strneq(b, fp->dirs[q - 1], s - b))
560 if (!(fp->dirs[q] = vmstrdup(fp->vm, b)))
563 (fp->dirs[q])[s - b] = 0;
567 strsort(fp->dirs, q, strcasecmp);
569 fp->lens[i] = strlen(fp->dirs[i]);
824 if (fp->dirs)
827 if (!*fp->dirs)
833 * (*fp->dirs)[*fp->lens]=='/' if its
839 if (!(*fp->dirs)[m])
841 if (!strncasecmp(*fp->dirs, fp->decode.path, m))
846 if (!(*fp->dirs)[m])
848 if (!(n = strcasecmp(*fp->dirs, fp->decode.path)) && (ignorecase || !strcmp(*fp->dirs, fp->decode.path)))
852 (*fp->dirs)[m] = '/';
853 if ((*fp->dirs)[m - 1] != '/')
854 (*fp->dirs)[++(*fp->lens)] = '/';
862 else if (!(*fp->dirs)[m])
864 fp->dirs++;