-/* $Id: zinfo.c,v 1.68 2006-08-14 10:40:15 adam Exp $
+/* $Id: zinfo.c,v 1.73 2006-11-22 11:13:17 adam Exp $
Copyright (C) 1995-2006
Index Data ApS
typedef struct zebAccessObjectB *zebAccessObject;
struct zebAccessObjectB {
void *handle;
- SYSNO sysno;
+ zint sysno;
Odr_oid *oid;
zebAccessObject next;
};
typedef struct {
struct zebSUInfoB *SUInfo;
- SYSNO sysno;
+ zint sysno;
int dirty;
int readFlag;
data1_node *data1_tree;
data1_node *data1_database;
zint recordCount; /* records in db */
zint recordBytes; /* size of records */
- SYSNO sysno; /* sysno of database info */
+ zint sysno; /* sysno of database info */
int readFlag; /* 1: read is needed when referenced; 0 if not */
int dirty; /* 1: database is dirty: write is needed */
struct zebDatabaseInfoB *next;
struct zebraCategoryListInfo {
int dirty;
- SYSNO sysno;
+ zint sysno;
data1_node *data1_categoryList;
};
int key_flush);
-static Record createRecord(Records records, SYSNO *sysno)
+static Record createRecord(Records records, zint *sysno)
{
Record rec;
if (*sysno)
yaz_log(YLOG_DEBUG, "read runnumber=" ZINT_FORMAT, zei->runNumber);
*zdip = NULL;
}
- rec_rm(&trec);
+ rec_free(&trec);
}
else /* create initial targetInfo */
{
trec->size[recInfo_storeData] = sgml_len;
rec_put(records, &trec);
- rec_rm(&trec);
+ rec_free(&trec);
}
zebraExplain_newDatabase(zei, "IR-Explain-1", 0);
}
*zsuip = NULL;
zad->readFlag = 0;
- rec_rm (&rec);
+ rec_free(&rec);
}
static void zebraExplain_readDatabase (ZebraExplainInfo zei,
np->child->u.data.len);
}
zdi->readFlag = 0;
- rec_rm (&rec);
+ rec_free(&rec);
}
int zebraExplain_removeDatabase(ZebraExplainInfo zei, void *update_handle)
rec = rec_get(zei->records, zad->sysno);
(*zei->updateFunc)(zei->updateHandle, rec, 0);
- rec_rm(&rec);
+ rec_free(&rec);
}
/* remove database record keys and delete it */
rec = rec_get (zei->records, zdi->sysno);
(*zei->updateFunc)(zei->updateHandle, rec, 0);
- rec_rm(&rec);
+ rec_free(&rec);
/* remove from list */
*zdip = zdi->next;
if (!c)
{
data1_pr_tree (zei->dh, n, stdout);
- exit (0);
- assert (c);
+ zebra_exit("zebraExplain_updateAccessInfo");
}
if ((p = accessInfo->attributeSetIds))
int i;
Record drec;
data1_node *node_ci, *node_categoryList;
- SYSNO sysno = 0;
+ zint sysno = 0;
static char *category[] = {
"CategoryList",
"TargetInfo",
assert (zei->curDatabaseInfo);
for (zsui = &zei->curDatabaseInfo->attributeDetails->SUInfo;
*zsui; zsui = &(*zsui)->next)
- if ((*zsui)->info.index_type == index_type
- && (*zsui)->info.cat == cat
- && (*zsui)->info.which == ZEB_SU_STR
- && !yaz_matchstr((*zsui)->info.u.str, str))
+ if ( (index_type == -1 || (*zsui)->info.index_type == index_type)
+ && (*zsui)->info.cat == cat
+ && (*zsui)->info.which == ZEB_SU_STR
+ && !yaz_matchstr((*zsui)->info.u.str, str))
{
struct zebSUInfoB *zsui_this = *zsui;
if (rec->info[recInfo_attr])
return (RecordAttr *) rec->info[recInfo_attr];
recordAttr = (RecordAttr *) xmalloc (sizeof(*recordAttr));
+
+ memset(recordAttr, '\0', sizeof(*recordAttr));
rec->info[recInfo_attr] = (char *) recordAttr;
rec->size[recInfo_attr] = sizeof(*recordAttr);