X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;ds=sidebyside;f=index%2Fextract.c;h=40259437c19fe79fa789c0b5f586dca0e58ce56b;hb=02cb6d6ffea2b80351aea040f29053bddebeae0c;hp=a726916ddfb773b07f7ea16359ebde1101b0545d;hpb=7e75317bed8eecabcb57e59b16093a32238738e2;p=idzebra-moved-to-github.git diff --git a/index/extract.c b/index/extract.c index a726916..4025943 100644 --- a/index/extract.c +++ b/index/extract.c @@ -3,7 +3,7 @@ * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * - * $Id: extract.c,v 1.110 2002-02-20 17:30:01 adam Exp $ + * $Id: extract.c,v 1.112 2002-03-14 18:41:59 adam Exp $ */ #include #include @@ -426,6 +426,7 @@ static int recordExtract (ZebraHandle zh, zh->keys.prevAttrUse = -1; zh->keys.prevAttrSet = -1; zh->keys.prevSeqNo = 0; + zh->sortKeys = 0; recordOffset = fi->file_moffset; extractCtrl.offset = fi->file_moffset; @@ -855,7 +856,7 @@ int extract_rec_in_mem (ZebraHandle zh, const char *recordType, RecordAttr *recordAttr; struct recExtractCtrl extractCtrl; int i, r; - char *matchStr; + char *matchStr = 0; RecType recType; char subType[1024]; void *clientData; @@ -945,7 +946,6 @@ int extract_rec_in_mem (ZebraHandle zh, const char *recordType, } /* match criteria */ - if (! *sysno) { /* new record */ @@ -1442,15 +1442,14 @@ static void extract_add_sort_string (RecWord *p, const char *string, { struct sortKey *sk; ZebraHandle zh = p->extractCtrl->handle; - struct sortKey *sortKeys = zh->sortKeys; - for (sk = sortKeys; sk; sk = sk->next) + for (sk = zh->sortKeys; sk; sk = sk->next) if (sk->attrSet == p->attrSet && sk->attrUse == p->attrUse) return; sk = (struct sortKey *) xmalloc (sizeof(*sk)); - sk->next = sortKeys; - sortKeys = sk; + sk->next = zh->sortKeys; + zh->sortKeys = sk; sk->string = (char *) xmalloc (length); sk->length = length; @@ -1597,6 +1596,7 @@ void extract_flushSortKeys (ZebraHandle zh, SYSNO sysno, xfree (sk); sk = sk_next; } + yaz_log (LOG_LOG, "extract_flushSortKeys"); *skp = 0; }