From owner-p4-projects@FreeBSD.ORG Sun Jul 6 09:34:34 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 67B5F1065670; Sun, 6 Jul 2008 09:34:34 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1267E1065688 for ; Sun, 6 Jul 2008 09:34:34 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id DECD18FC0C for ; Sun, 6 Jul 2008 09:34:33 +0000 (UTC) (envelope-from gabor@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id m669YXmw094324 for ; Sun, 6 Jul 2008 09:34:33 GMT (envelope-from gabor@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.2/8.14.1/Submit) id m669YXvU094322 for perforce@freebsd.org; Sun, 6 Jul 2008 09:34:33 GMT (envelope-from gabor@freebsd.org) Date: Sun, 6 Jul 2008 09:34:33 GMT Message-Id: <200807060934.m669YXvU094322@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gabor@freebsd.org using -f From: Gabor Kovesdan To: Perforce Change Reviews Cc: Subject: PERFORCE change 144768 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 Jul 2008 09:34:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=144768 Change 144768 by gabor@gabor_server on 2008/07/06 09:34:21 - Revert previous change, this was not really what is desired Affected files ... .. //depot/projects/soc2008/gabor_textproc/grep/grep.c#55 edit .. //depot/projects/soc2008/gabor_textproc/grep/grep.h#31 edit .. //depot/projects/soc2008/gabor_textproc/grep/util.c#48 edit Differences ... ==== //depot/projects/soc2008/gabor_textproc/grep/grep.c#55 (text+ko) ==== @@ -80,17 +80,10 @@ int eflags = REG_STARTEND; int matchall; /* shortcut */ - -/* Searching patterns */ int patterns, pattern_sz; char **pattern; regex_t *r_pattern; -/* Filename exclusion patterns */ -int epatterns, epattern_sz; -char **epattern; -regex_t *er_pattern; - /* For regex errors */ char re_error[RE_ERROR_BUF + 1]; @@ -119,7 +112,6 @@ int xflag; /* -x: pattern must match entire line */ int lbflag; /* --line-buffered */ int nullflag; /* --null */ -int exclflag; /* --exclude */ char *label; /* --label */ char *color; /* --color */ unsigned long long mcount; /* count for -m */ @@ -136,8 +128,7 @@ MMAP_OPT, LINEBUF_OPT, LABEL_OPT, - NULL_OPT, - R_EXCLUDE_OPT + NULL_OPT }; /* Housekeeping */ @@ -171,7 +162,6 @@ {"null", no_argument, NULL, NULL_OPT}, {"color", optional_argument, NULL, COLOR_OPT}, {"colour", optional_argument, NULL, COLOR_OPT}, - {"exclude", required_argument, NULL, R_EXCLUDE_OPT}, {"after-context", required_argument, NULL, 'A'}, {"text", no_argument, NULL, 'a'}, {"before-context", required_argument, NULL, 'B'}, @@ -249,22 +239,6 @@ } static void -add_epattern(char *pat, size_t len) -{ - if (epatterns == epattern_sz) { - epattern_sz *= 2; - epattern = grep_realloc(epattern, ++epattern_sz * sizeof(*epattern)); - } - if (len > 0 && pat[len - 1] == '\n') - --len; - /* pat may not be NUL-terminated */ - epattern[epatterns] = grep_malloc(len + 1); - memcpy(epattern[epatterns], pat, len); - epattern[epatterns][len] = '\0'; - ++epatterns; -} - -static void read_patterns(const char *fn) { FILE *f; @@ -507,12 +481,6 @@ case NULL_OPT: nullflag = 1; break; - case R_EXCLUDE_OPT: - if (dirbehave != DIR_RECURSE) - usage(); - exclflag = 1; - add_epattern(optarg, strlen(optarg)); - break; case HELP_OPT: default: usage(); @@ -548,15 +516,6 @@ errx(2, "%s", re_error); } } - er_pattern = grep_calloc(epatterns, sizeof(*er_pattern)); - for (i = 0; i < epatterns; ++i) { - c = regcomp(&er_pattern[i], epattern[i], REG_EXTENDED); - if (c != 0) { - regerror(c, &er_pattern[i], re_error, - RE_ERROR_BUF); - errx(2, "%s", re_error); - } - } if (lbflag) setlinebuf(stdout); ==== //depot/projects/soc2008/gabor_textproc/grep/grep.h#31 (text+ko) ==== @@ -82,14 +82,14 @@ /* Command line flags */ extern int Eflag, Fflag, Gflag, Hflag, Jflag, Lflag, Zflag, bflag, cflag, hflag, iflag, lflag, mflag, nflag, oflag, - qflag, sflag, vflag, wflag, xflag, nullflag, exclflag; + qflag, sflag, vflag, wflag, xflag, nullflag; extern unsigned long long Aflag, Bflag, mcount; extern char *color, *label; extern int binbehave, devbehave, dirbehave, linkbehave; -extern int first, prev, matchall, patterns, epatterns, tail, notfound; -extern char **pattern, **epattern; -extern regex_t *r_pattern, *er_pattern; +extern int first, prev, matchall, patterns, tail, notfound; +extern char **pattern; +extern regex_t *r_pattern; /* For regex errors */ #define RE_ERROR_BUF 512 ==== //depot/projects/soc2008/gabor_textproc/grep/util.c#48 (text+ko) ==== @@ -62,7 +62,7 @@ { FTS *fts; FTSENT *p; - int i, c, ok, fts_flags; + int c, fts_flags; c = fts_flags = 0; @@ -92,21 +92,7 @@ p->fts_path); break; default: - if (exclflag) { - regmatch_t pmatch; - - ok = 1; - pmatch.rm_so = 0; - pmatch.rm_eo = strlen(p->fts_path); - for (i = 0; i < patterns; i++) - if (regexec(&er_pattern[i], p->fts_path, 0, &pmatch, eflags) == 0) { - ok = 0; - break; - } - } else - ok = 1; - if (ok) - c += procfile(p->fts_path); + c += procfile(p->fts_path); break; } }