diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2008-03-19 02:40:37 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2008-03-19 02:40:37 +0000 |
commit | 965a2a191acdc6fc1cbdd2736a178f4d900e3765 (patch) | |
tree | 5b5c5df4ebde1ccf11528891d0a8afdd70ec36c5 /src/backend/parser/parse_expr.c | |
parent | 8436f9a0364a6a16dbf7b250597986a97c9e6f09 (diff) | |
download | postgresql-965a2a191acdc6fc1cbdd2736a178f4d900e3765.tar.gz postgresql-965a2a191acdc6fc1cbdd2736a178f4d900e3765.zip |
Fix regexp substring matching (substring(string from pattern)) for the corner
case where there is a match to the pattern overall but the user has specified
a parenthesized subexpression and that subexpression hasn't got a match.
An example is substring('foo' from 'foo(bar)?'). This should return NULL,
since (bar) isn't matched, but it was mistakenly returning the whole-pattern
match instead (ie, 'foo'). Per bug #4044 from Rui Martins.
This has been broken since the beginning; patch in all supported versions.
The old behavior was sufficiently inconsistent that it's impossible to believe
anyone is depending on it.
Diffstat (limited to 'src/backend/parser/parse_expr.c')
0 files changed, 0 insertions, 0 deletions