X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fzoom-c.c;h=7e71b26b1171a44116a14505af7b5dd827375400;hb=9bf84c30a3d0e3e1d4b9136aee9c0a4b8ae769d2;hp=57c083cf2423fe6aacdefedbbc022fc5f5770075;hpb=5a1156a0d8d50aa07af3eec75e939ed2065d3880;p=yaz-moved-to-github.git diff --git a/src/zoom-c.c b/src/zoom-c.c index 57c083c..7e71b26 100644 --- a/src/zoom-c.c +++ b/src/zoom-c.c @@ -930,6 +930,7 @@ ZOOM_API(ZOOM_resultset) task->u.search.resultset = r; task->u.search.start = start; task->u.search.count = count; + task->u.search.recv_search_fired = 0; syntax = ZOOM_options_get(r->options, "preferredRecordSyntax"); task->u.search.syntax = syntax ? xstrdup(syntax) : 0; @@ -3995,9 +3996,12 @@ static zoom_ret handle_srw_response(ZOOM_connection c, syntax = c->tasks->u.search.syntax; elementSetName = c->tasks->u.search.elementSetName; - event = ZOOM_Event_create(ZOOM_EVENT_RECV_SEARCH); - ZOOM_connection_put_event(c, event); - + if (!c->tasks->u.search.recv_search_fired) + { + event = ZOOM_Event_create(ZOOM_EVENT_RECV_SEARCH); + ZOOM_connection_put_event(c, event); + c->tasks->u.search.recv_search_fired = 1; + } break; case ZOOM_TASK_RETRIEVE: resultset = c->tasks->u.retrieve.resultset;