aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>1999-05-21 15:47:13 +0000
committerBruce Momjian <bruce@momjian.us>1999-05-21 15:47:13 +0000
commit96492290b5aa960d58daaf3982a1e1399ce8418c (patch)
tree1fd3ae12f1cea3289858e41b1717765217b353cd /src
parent08bcc77a5cd3ba876662728c0b783fdfee532f62 (diff)
downloadpostgresql-96492290b5aa960d58daaf3982a1e1399ce8418c.tar.gz
postgresql-96492290b5aa960d58daaf3982a1e1399ce8418c.zip
Treat {} as special regex too.
Diffstat (limited to 'src')
-rw-r--r--src/backend/parser/gram.y12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y
index 2cb1a4795a0..bb2a5863825 100644
--- a/src/backend/parser/gram.y
+++ b/src/backend/parser/gram.y
@@ -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++)
{