X-Git-Url: http://git.indexdata.com/?p=idzebra-moved-to-github.git;a=blobdiff_plain;f=index%2Fzsets.c;h=1a4686bc0d3e94d2d49b641b4ebd89f285dd4486;hp=111649d9f565160943fed8e13dfe2e9d580f24cf;hb=e199777080c6fa0963d51b7df1763fd5286ca9a4;hpb=86702aad7008abed6afef80feed08b3e4e1cbcd1 diff --git a/index/zsets.c b/index/zsets.c index 111649d..1a4686b 100644 --- a/index/zsets.c +++ b/index/zsets.c @@ -1,4 +1,4 @@ -/* $Id: zsets.c,v 1.119 2007-01-17 15:35:48 adam Exp $ +/* $Id: zsets.c,v 1.124 2007-10-31 16:56:14 adam Exp $ Copyright (C) 1995-2007 Index Data ApS @@ -100,7 +100,6 @@ static ZEBRA_RES resultSetSearch(ZebraHandle zh, NMEM nmem, NMEM rset_nmem, Z_RPNQuery *rpn, ZebraSet sset) { RSET rset = 0; - oident *attrset; Z_SortKeySpecList *sort_sequence; int sort_status, i; ZEBRA_RES res = ZEBRA_OK; @@ -114,11 +113,9 @@ static ZEBRA_RES resultSetSearch(ZebraHandle zh, NMEM nmem, NMEM rset_nmem, for (i = 0; inum_specs; i++) sort_sequence->specs[i] = 0; - attrset = oid_getentbyoid (rpn->attributeSetId); - rpn_get_top_approx_limit(zh, rpn->RPNStructure, &sset->approx_limit); - res = rpn_search_top(zh, rpn->RPNStructure, attrset->value, + res = rpn_search_top(zh, rpn->RPNStructure, rpn->attributeSetId, nmem, rset_nmem, sort_sequence, sset->num_bases, sset->basenames, @@ -545,7 +542,7 @@ struct sortKeyInfo { int relation; int ord; int numerical; - int index_type; + const char *index_type; }; void resultSetInsertSort(ZebraHandle zh, ZebraSet sset, @@ -582,7 +579,7 @@ void resultSetInsertSort(ZebraHandle zh, ZebraSet sset, char this_entry_org[1024]; char other_entry_org[1024]; double diff; - int index_type = criteria[j].index_type; + const char *index_type = criteria[j].index_type; zebra_term_untrans(zh, index_type, this_entry_org, this_entry_buf); zebra_term_untrans(zh, index_type, other_entry_org, @@ -888,7 +885,7 @@ ZEBRA_RES resultSetSortSingle(ZebraHandle zh, NMEM nmem, sort_criteria[i].ord = zebraExplain_lookup_attr_str(zh->reg->zei, zinfo_index_category_sort, - -1, sk->u.sortField); + 0, sk->u.sortField); if (sks->which != Z_SortKeySpec_null && sort_criteria[i].ord == -1) { @@ -1207,7 +1204,11 @@ ZEBRA_RES zebra_result_set_term_info(ZebraHandle zh, const char *setname, if (ret == (size_t)(-1)) *termlen = 0; else + { + yaz_iconv(zh->iconv_from_utf8, 0, 0, + &outbuf, &outleft); *termlen = outbuf - termbuf; + } } else { @@ -1272,7 +1273,7 @@ ZEBRA_RES zebra_snippets_hit_vector(ZebraHandle zh, const char *setname, struct ord_list *ol; for (ol = termid->ol; ol; ol = ol->next) { - zebra_snippets_append(snippets, key.mem[key.len-1], + zebra_snippets_append(snippets, key.mem[key.len-1], 0, ol->ord, termid->name); } }