Lines Matching refs:pattern

47  *	Set in gl_flags if pattern contained a globbing character.
279 * The main glob() routine: compiles the pattern (optionally processing
280 * quotes), calls glob1() to do the real pattern matching, and finally
286 glob(const char *pattern, int flags, int (*errfunc) (const char *, int),
296 patnext = (const unsigned char *) pattern;
317 patbuf = xmalloc((strlen(pattern) + 1) * sizeof(*patbuf));
417 * If there was no match we are going to append the pattern
419 * and the pattern did not contain any magic characters
426 globextend(pattern, pglob);
431 /* copy pattern, interpreting quotes */
432 copy = xmalloc(strlen(pattern) + 1);
434 src = pattern;
457 glob1(Char *pattern, glob_t *pglob, int no_match)
465 if (*pattern == EOS)
467 err = glob2(&pathbuf, pattern, pglob, no_match);
474 * of recursion for each segment in the pattern that contains one or
478 glob2(struct strbuf *pathbuf, const Char *pattern, glob_t *pglob, int no_match)
486 * loop over pattern segments until end of pattern or until segment with
491 if (*pattern == EOS) { /* end of pattern? */
515 p = pattern;
524 pattern = p;
525 while (*pattern == SEP)
526 strbuf_append1(pathbuf, *pattern++);
530 return (glob3(pathbuf, pattern, p, pattern, pglob, no_match));
555 glob3(struct strbuf *pathbuf, const Char *pattern, const Char *restpattern,
586 err = pglobstar==pattern && termstar==restpattern ?
590 glob3(pathbuf, pattern, restpattern, termstar, pglob, no_match);
616 if (dp->d_name[0] == DOT && *pattern != DOT)
630 if (match(pathbuf->s + orig_len, pattern, termstar,
638 if (match(pathbuf->s + orig_len, pattern, restpattern,
688 * pattern matching function for filenames. Each occurrence of the *
689 * pattern causes a recursion level.