X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Ftermlists.c;h=0b870bb1aab4bf8371203d313759562065fd704b;hb=dd072ff41444dfdd49c76ecc3ca634b06cb75dd1;hp=9741eb253103fb31373ce8c4f6a17dd4f3841dc4;hpb=3638b9f1f4ea4b8786cc792d8a9e21d4475a3155;p=pazpar2-moved-to-github.git diff --git a/src/termlists.c b/src/termlists.c index 9741eb2..0b870bb 100644 --- a/src/termlists.c +++ b/src/termlists.c @@ -147,8 +147,12 @@ void termlist_insert(struct termlist *tl, const char *display_term, static int compare(const void *s1, const void *s2) { - struct termlist_score **p1 = (struct termlist_score**) s1, **p2 = (struct termlist_score **) s2; - return (*p2)->frequency - (*p1)->frequency; + struct termlist_score **p1 = (struct termlist_score **) s1; + struct termlist_score **p2 = (struct termlist_score **) s2; + int d = (*p2)->frequency - (*p1)->frequency; + if (d) + return d; + return strcmp((*p1)->display_term, (*p2)->display_term); } struct termlist_score **termlist_highscore(struct termlist *tl, int *len)