Collect duplicate copies of oid_cmp()

This commit is contained in:
Peter Eisentraut 2017-03-01 11:55:28 -05:00
parent 788af6f854
commit 20f6d74242
5 changed files with 17 additions and 51 deletions

View 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)

View File

@ -27,12 +27,11 @@
#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;
}

View 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)

View 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 *

View 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,