From: Aleš Křenek Date: Fri, 15 Jul 2005 11:44:30 +0000 (+0000) Subject: make glite_jp_attr_cmp() public X-Git-Tag: glite-lb-ws-interface_R_2_0_0~5 X-Git-Url: http://scientific.zcu.cz/git/?a=commitdiff_plain;h=9b4d664256d5d5291381562912ca7cfd530f1fcf;p=jra1mw.git make glite_jp_attr_cmp() public --- diff --git a/org.glite.jp.common/interface/types.h b/org.glite.jp.common/interface/types.h index 34e46ea..7cf9d98 100644 --- a/org.glite.jp.common/interface/types.h +++ b/org.glite.jp.common/interface/types.h @@ -90,6 +90,8 @@ void glite_jp_attrval_free(glite_jp_attrval_t *,int); void glite_jp_attr_free(glite_jp_attr_t *,int); void glite_jp_attrset_free(glite_jp_attr_t *a,int); +int glite_jp_attr_cmp(const glite_jp_attr_t *,const glite_jp_attr_t *); + void glite_jp_attr_union(const glite_jp_attr_t *, const glite_jp_attr_t *, glite_jp_attr_t **); diff --git a/org.glite.jp.common/src/attr.c b/org.glite.jp.common/src/attr.c index 3dfa1cd..2838b68 100644 --- a/org.glite.jp.common/src/attr.c +++ b/org.glite.jp.common/src/attr.c @@ -18,10 +18,9 @@ void glite_jp_attrval_free(glite_jp_attrval_t *a,int f) if (f) free(a); } -static int attr_cmp(const void *va,const void *vb) +int glite_jp_attr_cmp(const glite_jp_attr_t *a,const glite_jp_attr_t *b) { int c; - const glite_jp_attr_t *a = va, *b = vb; if (a->type < b->type) return -1; if (a->type > b->type) return 1; @@ -37,6 +36,11 @@ static int attr_cmp(const void *va,const void *vb) } } +static int void_attr_cmp(const void *va, const void *vb) +{ + return glite_jp_attr_cmp(va,vb); +} + void glite_jp_attr_union(const glite_jp_attr_t *a, const glite_jp_attr_t *b, glite_jp_attr_t **out) { @@ -56,7 +60,7 @@ void glite_jp_attr_union(const glite_jp_attr_t *a, const glite_jp_attr_t *b, memcpy(res,a,ac * sizeof *a); memcpy(res+ac,b,bc * sizeof *b); memset(res+ac+bc,0,sizeof *res); - qsort(res,c,sizeof *res,attr_cmp); + qsort(res,c,sizeof *res,void_attr_cmp); for (i=0; i