OSDN Git Service

Treat {} as special regex too.
authorBruce Momjian <bruce@momjian.us>
Fri, 21 May 1999 15:47:13 +0000 (15:47 +0000)
committerBruce Momjian <bruce@momjian.us>
Fri, 21 May 1999 15:47:13 +0000 (15:47 +0000)
src/backend/parser/gram.y

index 2cb1a47..bb2a586 100644 (file)
@@ -10,7 +10,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.80 1999/05/21 04:40:04 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.81 1999/05/21 15:47:13 momjian Exp $
  *
  * HISTORY
  *       AUTHOR                        DATE                    MAJOR EVENT
@@ -5360,13 +5360,15 @@ static Node *makeIndexable(char *opname, Node *lexpr, Node *rexpr)
                        char *match_least = palloc(strlen(n->val.val.str)+2);
                        char *match_most = palloc(strlen(n->val.val.str)+2);
                        int pos, match_pos=0;
-                       bool found_pipe = false;
+                       bool found_special = false;
 
                        for (pos = 1; n->val.val.str[pos]; pos++)
                        {
-                               if (n->val.val.str[pos] == '|')
+                               if (n->val.val.str[pos] == '|' ||
+                               if (n->val.val.str[pos] == '{' ||
+                               if (n->val.val.str[pos] == '}')
                                {
-                                       found_pipe = true;
+                                       found_special = true;
                                        break;
                                }
                        if (n->val.val.str[pos] == '\\')
@@ -5374,7 +5376,7 @@ static Node *makeIndexable(char *opname, Node *lexpr, Node *rexpr)
                        }
 
                        /* skip leading ^ */
-                       if (!found_pipe)
+                       if (!found_special)
                        {
                                for (pos = 1; n->val.val.str[pos]; pos++)
                                {