]> granicus.if.org Git - postgresql/blobdiff - src/backend/catalog/pg_conversion.c
Refactor the handling of the various DropStmt variants so that when multiple
[postgresql] / src / backend / catalog / pg_conversion.c
index a456ca4b49a03c38c5a34c5b30b58e430ae72f91..753acb133df114b50b8e9b933c060eee487f2e84 100644 (file)
@@ -8,16 +8,16 @@
  *
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/backend/catalog/pg_conversion.c,v 1.42 2008/03/27 03:57:33 tgl Exp $
+ *       $PostgreSQL: pgsql/src/backend/catalog/pg_conversion.c,v 1.44 2008/06/14 18:04:33 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
 #include "postgres.h"
 
 #include "access/heapam.h"
+#include "access/sysattr.h"
 #include "catalog/dependency.h"
 #include "catalog/indexing.h"
-#include "catalog/namespace.h"
 #include "catalog/pg_conversion.h"
 #include "catalog/pg_conversion_fn.h"
 #include "catalog/pg_namespace.h"
@@ -137,40 +137,6 @@ ConversionCreate(const char *conname, Oid connamespace,
        return oid;
 }
 
-/*
- * ConversionDrop
- *
- * Drop a conversion after doing permission checks.
- */
-void
-ConversionDrop(Oid conversionOid, DropBehavior behavior)
-{
-       HeapTuple       tuple;
-       ObjectAddress object;
-
-       tuple = SearchSysCache(CONVOID,
-                                                  ObjectIdGetDatum(conversionOid),
-                                                  0, 0, 0);
-       if (!HeapTupleIsValid(tuple))
-               elog(ERROR, "cache lookup failed for conversion %u", conversionOid);
-
-       if (!superuser() &&
-               ((Form_pg_conversion) GETSTRUCT(tuple))->conowner != GetUserId())
-               aclcheck_error(ACLCHECK_NOT_OWNER, ACL_KIND_CONVERSION,
-                                 NameStr(((Form_pg_conversion) GETSTRUCT(tuple))->conname));
-
-       ReleaseSysCache(tuple);
-
-       /*
-        * Do the deletion
-        */
-       object.classId = ConversionRelationId;
-       object.objectId = conversionOid;
-       object.objectSubId = 0;
-
-       performDeletion(&object, behavior);
-}
-
 /*
  * RemoveConversionById
  *