Collect duplicate copies of oid_cmp()
authorPeter Eisentraut <peter_e@gmx.net>
Wed, 1 Mar 2017 16:55:28 +0000 (11:55 -0500)
committerPeter Eisentraut <peter_e@gmx.net>
Wed, 1 Mar 2017 16:55:28 +0000 (11:55 -0500)
src/backend/catalog/pg_enum.c
src/backend/catalog/pg_inherits.c
src/backend/utils/adt/acl.c
src/backend/utils/adt/oid.c
src/include/utils/builtins.h

index a7d933663ee47b5d5cfbb8c9db9c3d1d844e5cbc..300f24d23120fac3e9508f383bf1025d3df830a0 100644 (file)
@@ -36,7 +36,6 @@
 Oid            binary_upgrade_next_pg_enum_oid = InvalidOid;
 
 static void RenumberEnumType(Relation pg_enum, HeapTuple *existing, int nelems);
-static int oid_cmp(const void *p1, const void *p2);
 static int sort_order_cmp(const void *p1, const void *p2);
 
 
@@ -605,20 +604,6 @@ RenumberEnumType(Relation pg_enum, HeapTuple *existing, int nelems)
 }
 
 
-/* qsort comparison function for oids */
-static int
-oid_cmp(const void *p1, const void *p2)
-{
-   Oid         v1 = *((const Oid *) p1);
-   Oid         v2 = *((const Oid *) p2);
-
-   if (v1 < v2)
-       return -1;
-   if (v1 > v2)
-       return 1;
-   return 0;
-}
-
 /* qsort comparison function for tuples by sort order */
 static int
 sort_order_cmp(const void *p1, const void *p2)
index 82662a1f7eeb6240da0ecc45b45527452d3ae1bd..9bd2cd16f678f087ba809fd5ad3049a19128528f 100644 (file)
 #include "catalog/pg_inherits_fn.h"
 #include "parser/parse_type.h"
 #include "storage/lmgr.h"
+#include "utils/builtins.h"
 #include "utils/fmgroids.h"
 #include "utils/syscache.h"
 #include "utils/tqual.h"
 
-static int oid_cmp(const void *p1, const void *p2);
-
 
 /*
  * find_inheritance_children
@@ -357,18 +356,3 @@ typeInheritsFrom(Oid subclassTypeId, Oid superclassTypeId)
 
    return result;
 }
-
-
-/* qsort comparison function */
-static int
-oid_cmp(const void *p1, const void *p2)
-{
-   Oid         v1 = *((const Oid *) p1);
-   Oid         v2 = *((const Oid *) p2);
-
-   if (v1 < v2)
-       return -1;
-   if (v1 > v2)
-       return 1;
-   return 0;
-}
index 96ac1dfefd820b1551a12c70e9d73f56c7cc29ca..fca8420b0165485dec13fd3426d298fb84cce81a 100644 (file)
@@ -88,7 +88,6 @@ static void check_circularity(const Acl *old_acl, const AclItem *mod_aip,
                  Oid ownerId);
 static Acl *recursive_revoke(Acl *acl, Oid grantee, AclMode revoke_privs,
                 Oid ownerId, DropBehavior behavior);
-static int oidComparator(const void *arg1, const void *arg2);
 
 static AclMode convert_priv_string(text *priv_type_text);
 static AclMode convert_any_priv_string(text *priv_type_text,
@@ -1490,7 +1489,7 @@ aclmembers(const Acl *acl, Oid **roleids)
    }
 
    /* Sort the array */
-   qsort(list, j, sizeof(Oid), oidComparator);
+   qsort(list, j, sizeof(Oid), oid_cmp);
 
    /* Remove duplicates from the array */
    k = 0;
@@ -1509,23 +1508,6 @@ aclmembers(const Acl *acl, Oid **roleids)
    return k + 1;
 }
 
-/*
- * oidComparator
- *     qsort comparison function for Oids
- */
-static int
-oidComparator(const void *arg1, const void *arg2)
-{
-   Oid         oid1 = *(const Oid *) arg1;
-   Oid         oid2 = *(const Oid *) arg2;
-
-   if (oid1 > oid2)
-       return 1;
-   if (oid1 < oid2)
-       return -1;
-   return 0;
-}
-
 
 /*
  * aclinsert (exported function)
index 12ef783b3fcfe8bfc7d8568618f5b9dcfb3253bd..7baaa1dd4eed57e7a46083e28ee2231b071674a1 100644 (file)
@@ -331,6 +331,20 @@ oidparse(Node *node)
    return InvalidOid;          /* keep compiler quiet */
 }
 
+/* qsort comparison function for Oids */
+int
+oid_cmp(const void *p1, const void *p2)
+{
+   Oid         v1 = *((const Oid *) p1);
+   Oid         v2 = *((const Oid *) p2);
+
+   if (v1 < v2)
+       return -1;
+   if (v1 > v2)
+       return 1;
+   return 0;
+}
+
 
 /*****************************************************************************
  *  PUBLIC ROUTINES                                                         *
index 5bdca8203da5af1bba5005fd4918f03d438cb6df..1435a7b57a924d2dd673ea18a931585fb2965e76 100644 (file)
@@ -67,6 +67,7 @@ extern int    float8_cmp_internal(float8 a, float8 b);
 /* oid.c */
 extern oidvector *buildoidvector(const Oid *oids, int n);
 extern Oid oidparse(Node *node);
+extern int oid_cmp(const void *p1, const void *p2);
 
 /* regexp.c */
 extern char *regexp_fixed_prefix(text *text_re, bool case_insensitive,