|
|
|
@ -264,7 +264,9 @@ struct active_feature_t { |
|
|
|
|
OPENTYPE_FEATURE_RECORD rec; |
|
|
|
|
unsigned int order; |
|
|
|
|
|
|
|
|
|
static int cmp (const active_feature_t *a, const active_feature_t *b) { |
|
|
|
|
static int cmp (const void *pa, const void *pb) { |
|
|
|
|
const active_feature_t *a = (const active_feature_t *) pa; |
|
|
|
|
const active_feature_t *b = (const active_feature_t *) pb; |
|
|
|
|
return a->rec.tagFeature < b->rec.tagFeature ? -1 : a->rec.tagFeature > b->rec.tagFeature ? 1 : |
|
|
|
|
a->order < b->order ? -1 : a->order > b->order ? 1 : |
|
|
|
|
a->rec.lParameter < b->rec.lParameter ? -1 : a->rec.lParameter > b->rec.lParameter ? 1 : |
|
|
|
@ -280,7 +282,9 @@ struct feature_event_t { |
|
|
|
|
bool start; |
|
|
|
|
active_feature_t feature; |
|
|
|
|
|
|
|
|
|
static int cmp (const feature_event_t *a, const feature_event_t *b) { |
|
|
|
|
static int cmp (const void *pa, const void *pb) { |
|
|
|
|
const feature_event_t *a = (const feature_event_t *) pa; |
|
|
|
|
const feature_event_t *b = (const feature_event_t *) pb; |
|
|
|
|
return a->index < b->index ? -1 : a->index > b->index ? 1 : |
|
|
|
|
a->start < b->start ? -1 : a->start > b->start ? 1 : |
|
|
|
|
active_feature_t::cmp (&a->feature, &b->feature); |
|
|
|
|