aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTeodor Sigaev <teodor@sigaev.ru>2009-07-28 09:32:23 +0000
committerTeodor Sigaev <teodor@sigaev.ru>2009-07-28 09:32:23 +0000
commit3a261300b4490b7ddef656565916b93cfc3e13bd (patch)
tree6b896e0d2247719a2573fa20e19e8e43a4468c8b
parent8329149139bee8d9c84695121b24f08ba8a2f01e (diff)
downloadpostgresql-3a261300b4490b7ddef656565916b93cfc3e13bd.tar.gz
postgresql-3a261300b4490b7ddef656565916b93cfc3e13bd.zip
Fix incorrect cleanup of tsquery in ts_rewrite(). Per bug #4933 by
Aaron Marcuse-Kubitza <aaronmk@blackducksoftware.com>
-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 22db8609f3a..c9dbd862a00 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.14 2009/01/07 13:44:36 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/adt/tsquery_rewrite.c,v 1.14.2.1 2009/07/28 09:32:23 teodor Exp $
*
*-------------------------------------------------------------------------
*/
@@ -217,12 +217,12 @@ dropvoidsubtree(QTNode *root)
root->nchild = j;
- if (root->valnode->operator.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->operator.oper != OP_NOT)
{
QTNode *nroot = root->child[0];