From 3a261300b4490b7ddef656565916b93cfc3e13bd Mon Sep 17 00:00:00 2001 From: Teodor Sigaev Date: Tue, 28 Jul 2009 09:32:23 +0000 Subject: [PATCH] Fix incorrect cleanup of tsquery in ts_rewrite(). Per bug #4933 by Aaron Marcuse-Kubitza --- src/backend/utils/adt/tsquery_rewrite.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/backend/utils/adt/tsquery_rewrite.c b/src/backend/utils/adt/tsquery_rewrite.c index 22db8609f3..c9dbd862a0 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];