X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=blobdiff_plain;ds=sidebyside;f=src%2Fpazpar2.c;h=8df9491c0bd2dabea2b2280950558e45d9b11f0c;hb=b9a83dec2858e9aa4247b29b3f8f8cf42a1a786d;hp=c95ce3a1dae92b46f6ef079ddf77ca07d9a41783;hpb=1feb0a041e752e096256750c1ec0e8e00f1c30e5;p=pazpar2-moved-to-github.git diff --git a/src/pazpar2.c b/src/pazpar2.c index c95ce3a..8df9491 100644 --- a/src/pazpar2.c +++ b/src/pazpar2.c @@ -1,4 +1,4 @@ -/* $Id: pazpar2.c,v 1.1 2006-12-20 20:47:16 quinn Exp $ */; +/* $Id: pazpar2.c,v 1.2 2006-12-20 22:19:35 adam Exp $ */; #include #include @@ -153,10 +153,10 @@ static void send_search(IOCHAN i) zquery->u.type_1 = ccl_rpn_query(global_parameters.odr_out, cn); ccl_rpn_delete(cn); - for (ndb = 0; *db->databases[ndb]; ndb++) + for (ndb = 0; db->databases[ndb]; ndb++) ; databaselist = odr_malloc(global_parameters.odr_out, sizeof(char*) * ndb); - for (ndb = 0; *db->databases[ndb]; ndb++) + for (ndb = 0; db->databases[ndb]; ndb++) databaselist[ndb] = db->databases[ndb]; a->u.presentRequest->preferredRecordSyntax = @@ -1038,8 +1038,10 @@ void load_simpletargets(const char *fn) strcpy(database->url, url); strcat(database->url, "/"); strcat(database->url, db); - strcpy(database->databases[0], db); - *database->databases[1] = '\0'; + + database->databases = xmalloc(2 * sizeof(char *)); + database->databases[0] = xstrdup(db); + database->databases[1] = 0; database->errors = 0; database->next = databases; databases = database; @@ -1257,9 +1259,22 @@ struct termlist_score **termlist(struct session *s, int *num) return termlist_highscore(s->termlist, num); } -struct record **show(struct session *s, int start, int *num, int *total, int *sumhits) +void report_nmem_stats(void) { - struct record **recs = nmem_malloc(s->nmem, *num * sizeof(struct record *)); + size_t in_use, is_free; + + nmem_get_memory_in_use(&in_use); + nmem_get_memory_free(&is_free); + + yaz_log(YLOG_LOG, "nmem stat: use=%ld free=%ld", + (long) in_use, (long) is_free); +} + +struct record **show(struct session *s, int start, int *num, int *total, + int *sumhits, NMEM nmem_show) +{ + struct record **recs = nmem_malloc(nmem_show, *num + * sizeof(struct record *)); int i; relevance_prepare_read(s->relevance, s->reclist);