X-Git-Url: http://lists.indexdata.com/cgi-bin?a=blobdiff_plain;f=src%2Fsession.c;h=6dce5d92e20e49cee0deeae69ac3e3925118c89a;hb=cc03aa93987775b58199f26c1429a661213bf5f4;hp=f7f687da91f915d905da9bf748ca9a8a7d71fafe;hpb=6aed90d2cb69a71e6510475982d56933fb401606;p=pazpar2-moved-to-github.git diff --git a/src/session.c b/src/session.c index f7f687d..6dce5d9 100644 --- a/src/session.c +++ b/src/session.c @@ -1,5 +1,5 @@ /* This file is part of Pazpar2. - Copyright (C) 2006-2011 Index Data + Copyright (C) 2006-2012 Index Data Pazpar2 is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free @@ -648,11 +648,9 @@ void session_sort(struct session *se, const char *field, int increasing) for (l = se->clients_active; l; l = l->next) { struct client *cl = l->client; - struct timeval tval; - if (client_prep_connection(cl, se->service->z3950_operation_timeout, - se->service->z3950_session_timeout, - se->service->server->iochan_man, - &tval)) + if (client_get_state(cl) == Client_Connecting || + client_get_state(cl) == Client_Idle || + client_get_state(cl) == Client_Working) client_start_search(cl); } session_leave(se); @@ -749,7 +747,7 @@ enum pazpar2_error_code session_search(struct session *se, session_log(se, YLOG_LOG, "client REUSE %s", client_get_id(cl)); client_reingest(cl); } - else + else if (r) { session_log(se, YLOG_LOG, "client NEW %s", client_get_id(cl)); client_start_search(cl);