aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/tsquery_rewrite.c
diff options
context:
space:
mode:
authorTeodor Sigaev <teodor@sigaev.ru>2009-07-28 09:31:55 +0000
committerTeodor Sigaev <teodor@sigaev.ru>2009-07-28 09:31:55 +0000
commit1f4b046c188cd6f8eda4890f7f0e9d9974825d9b (patch)
tree69544f65f6025a55763546564f00c6da1928347d /src/backend/utils/adt/tsquery_rewrite.c
parentc1b9ec24efb5d576800fb5163acab6bdefb4391c (diff)
downloadpostgresql-1f4b046c188cd6f8eda4890f7f0e9d9974825d9b.tar.gz
postgresql-1f4b046c188cd6f8eda4890f7f0e9d9974825d9b.zip
Fix incorrect cleanup of tsquery in ts_rewrite(). Per bug #4933 by
Aaron Marcuse-Kubitza <aaronmk@blackducksoftware.com>
Diffstat (limited to 'src/backend/utils/adt/tsquery_rewrite.c')
-rw-r--r--src/backend/utils/adt/tsquery_rewrite.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/backend/utils/adt/tsquery_rewrite.c b/src/backend/utils/adt/tsquery_rewrite.c
index 981c729d953..d4f67334033 100644
--- a/src/backend/utils/adt/tsquery_rewrite.c
+++ b/src/backend/utils/adt/tsquery_rewrite.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/utils/adt/tsquery_rewrite.c,v 1.15 2009/07/16 06:33:44 petere Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/adt/tsquery_rewrite.c,v 1.16 2009/07/28 09:31:55 teodor Exp $
*
*-------------------------------------------------------------------------
*/
@@ -217,12 +217,12 @@ dropvoidsubtree(QTNode *root)
root->nchild = j;
- if (root->valnode->qoperator.oper == OP_NOT && root->nchild == 0)
+ if (root->nchild == 0)
{
QTNFree(root);
root = NULL;
}
- else if (root->nchild == 1)
+ else if (root->nchild == 1 && root->valnode->qoperator.oper != OP_NOT)
{
QTNode *nroot = root->child[0];