]> git.cameronkatri.com Git - mandoc.git/blobdiff - apropos_db.c
Make `-i' only apply to regular expressions. For the equality operator
[mandoc.git] / apropos_db.c
index b9dd06530e2010e59030a93960def6d8dfc4fbe4..6c9c9408d7f08de33f4d046256cfb3a8ba37948a 100644 (file)
@@ -1,4 +1,4 @@
-/*     $Id: apropos_db.c,v 1.15 2011/11/28 09:44:05 schwarze Exp $ */
+/*     $Id: apropos_db.c,v 1.16 2011/11/29 10:53:42 kristaps Exp $ */
 /*
  * Copyright (c) 2011 Kristaps Dzonsons <kristaps@bsd.lv>
  * Copyright (c) 2011 Ingo Schwarze <schwarze@openbsd.org>
@@ -52,7 +52,6 @@ struct        expr {
        int              regex; /* is regex? */
        int              index; /* index in match array */
        uint64_t         mask; /* type-mask */
-       int              cs; /* is case-sensitive? */
        int              and; /* is rhs of logical AND? */
        char            *v; /* search value */
        regex_t          re; /* compiled re, if regex */
@@ -694,7 +693,6 @@ exprexpr(int argc, char *argv[], int *pos, int *lvl, size_t *tt)
                        ++(*pos);
                        ++(*lvl);
                        next = mandoc_calloc(1, sizeof(struct expr));
-                       next->cs = 1;
                        next->subexpr = exprexpr(argc, argv, pos, lvl, tt);
                        if (NULL == next->subexpr) {
                                free(next);
@@ -745,8 +743,6 @@ exprterm(char *buf, int cs)
 
        memset(&e, 0, sizeof(struct expr));
 
-       e.cs = cs;
-
        /* Choose regex or substring match. */
 
        if (NULL == (e.v = strpbrk(buf, "=~"))) {
@@ -818,13 +814,8 @@ exprmark(const struct expr *p, const char *cp,
                if (p->regex) {
                        if (regexec(&p->re, cp, 0, NULL, 0))
                                continue;
-               } else if (p->cs) {
-                       if (NULL == strstr(cp, p->v))
-                               continue;
-               } else {
-                       if (NULL == strcasestr(cp, p->v))
-                               continue;
-               }
+               } else if (NULL == strcasestr(cp, p->v))
+                       continue;
 
                if (NULL == ms)
                        return(1);