aboutsummaryrefslogtreecommitdiff
path: root/src/backend/tcop/utility.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/tcop/utility.c')
-rw-r--r--src/backend/tcop/utility.c27
1 files changed, 17 insertions, 10 deletions
diff --git a/src/backend/tcop/utility.c b/src/backend/tcop/utility.c
index 63e6b5dd9b2..24a1e3d2964 100644
--- a/src/backend/tcop/utility.c
+++ b/src/backend/tcop/utility.c
@@ -10,7 +10,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/tcop/utility.c,v 1.149 2002/04/15 05:22:04 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/tcop/utility.c,v 1.150 2002/04/18 20:01:09 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -312,11 +312,6 @@ ProcessUtility(Node *parsetree,
RemoveIndex(rel);
break;
- case DROP_RULE:
- /* RemoveRewriteRule checks permissions */
- RemoveRewriteRule(names);
- break;
-
case DROP_TYPE:
/* RemoveType does its own permissions checks */
RemoveType(names);
@@ -714,12 +709,24 @@ ProcessUtility(Node *parsetree,
CreateTrigger((CreateTrigStmt *) parsetree);
break;
- case T_DropTrigStmt:
+ case T_DropPropertyStmt:
{
- DropTrigStmt *stmt = (DropTrigStmt *) parsetree;
+ DropPropertyStmt *stmt = (DropPropertyStmt *) parsetree;
+ Oid relId;
- DropTrigger(RangeVarGetRelid(stmt->relation, false),
- stmt->trigname);
+ relId = RangeVarGetRelid(stmt->relation, false);
+
+ switch (stmt->removeType)
+ {
+ case DROP_RULE:
+ /* RemoveRewriteRule checks permissions */
+ RemoveRewriteRule(relId, stmt->property);
+ break;
+ case DROP_TRIGGER:
+ /* DropTrigger checks permissions */
+ DropTrigger(relId, stmt->property);
+ break;
+ }
}
break;