ac descriptor works
FossilOrigin-Name: 8e68ed51a2c8ee448474ab13ef8d0edbd8cfda5b5384684e2ed9ffa1fca4e799
This commit is contained in:
@ -2,5 +2,30 @@
|
||||
|
||||
int cw_ktv_mavlcmp(const void *v1, const void *v2)
|
||||
{
|
||||
return strcmp(((cw_KTV_t *) v1)->key, ((cw_KTV_t *) v2)->key);
|
||||
char *d1,*d2;
|
||||
int l1,l2,rc,i1,i2;
|
||||
|
||||
|
||||
d1 = strchr(((cw_KTV_t *) v1)->key,'.');
|
||||
d2 = strchr(((cw_KTV_t *) v2)->key,'.');
|
||||
|
||||
if (d1==NULL || d2==NULL)
|
||||
return strcmp(((cw_KTV_t *) v1)->key, ((cw_KTV_t *) v2)->key);
|
||||
|
||||
l1=d1-((cw_KTV_t *) v1)->key;
|
||||
l2=d2-((cw_KTV_t *) v2)->key;
|
||||
|
||||
if (l1!=l2){
|
||||
return strcmp(((cw_KTV_t *) v1)->key, ((cw_KTV_t *) v2)->key);
|
||||
}
|
||||
|
||||
rc = strncmp(((cw_KTV_t *) v1)->key,((cw_KTV_t *) v2)->key,l1);
|
||||
if (rc!=0){
|
||||
return rc;
|
||||
}
|
||||
|
||||
i1 = atoi(d1+1);
|
||||
i2 = atoi(d2+1);
|
||||
|
||||
return i1-i2;
|
||||
}
|
||||
|
Reference in New Issue
Block a user