X-Git-Url: http://lists.indexdata.com/cgi-bin?a=blobdiff_plain;f=src%2Fsession.c;h=5ad2694ad8d2440e7f2cc06cf791985434b3525d;hb=538abdde82f2a1c8f5ce6f27c8ee0e0f71e989a7;hp=50c4b94361d40f70ab6efde4d6afa5abdea9a4ac;hpb=6e2b2cc9c5c0290bf2fc53ff3dab7bf15c97526b;p=pazpar2-moved-to-github.git diff --git a/src/session.c b/src/session.c index 50c4b94..5ad2694 100644 --- a/src/session.c +++ b/src/session.c @@ -1317,9 +1317,7 @@ struct record_cluster **show_range_start(struct session *se, client_update_show_stat(rec->client, 1); } } - if (*num > 0) - recs = - nmem_malloc(se->nmem, *num * sizeof(struct record_cluster *)); + recs = nmem_malloc(se->nmem, (*num > 0 ? *num : 1) * sizeof(*recs)); for (i = 0; i < *num; i++) { struct record_cluster *r = reclist_read_record(se->reclist); @@ -1677,7 +1675,7 @@ int ingest_record(struct client *cl, const char *rec, return -1; } session_enter(se, "ingest_record"); - if (client_get_session(cl) == se) + if (client_get_session(cl) == se && se->relevance) ret = ingest_to_cluster(cl, xdoc, root, record_no, mergekey_norm); session_leave(se, "ingest_record"); @@ -2155,7 +2153,7 @@ void session_log(struct session *s, int level, const char *fmt, ...) va_start(ap, fmt); yaz_vsnprintf(buf, sizeof(buf)-30, fmt, ap); - yaz_log(level, "Session %u: %s", s->session_id, buf); + yaz_log(level, "Session %u: %s", s ? s->session_id : 0, buf); va_end(ap); }