Honor block=1 for show when re-searching (sort)
[pazpar2-moved-to-github.git] / src / http_command.c
index a4d5106..2f893c8 100644 (file)
@@ -961,8 +961,6 @@ static void cmd_show(struct http_channel *c)
     if (!sort)
         sort = "relevance";
     
-    status = session_active_clients(s->psession);
-
     if (!(sp = reclist_parse_sortparms(c->nmem, sort, s->psession->service)))
     {
         error(c->response, PAZPAR2_MALFORMED_PARAMETER_VALUE, "sort");
@@ -971,6 +969,8 @@ static void cmd_show(struct http_channel *c)
     }
     session_sort(s->psession, sp->name, sp->increasing);
 
+    status = session_active_clients(s->psession);
+
     if (block)
     {
         if (!strcmp(block, "preferred") && !session_is_preferred_clients_ready(s->psession) && reclist_get_num_records(s->psession->reclist) == 0)
@@ -986,7 +986,7 @@ static void cmd_show(struct http_channel *c)
             return;
 
         }
-        else if (status && reclist_get_num_records(s->psession->reclist) == 0)
+        else if (status)
         {
             // if there is already a watch/block. we do not block this one
             if (session_set_watch(s->psession, SESSION_WATCH_SHOW,