]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
lib/resolve: response marked as resolved too early
authorMarek Vavruša <marek.vavrusa@nic.cz>
Mon, 4 May 2015 08:31:46 +0000 (10:31 +0200)
committerMarek Vavruša <marek.vavrusa@nic.cz>
Tue, 5 May 2015 17:55:20 +0000 (19:55 +0200)
lib/resolve.c

index 75fc3cd4363fa4b36e314d6649d3dad16dee9c7a..30fb5c906451260d82496659457479810aab0c30 100644 (file)
@@ -367,8 +367,10 @@ int kr_resolve_produce(struct kr_request *request, struct sockaddr **dst, int *t
        case KNOT_STATE_CONSUME: break;
        case KNOT_STATE_DONE:
        default: /* Current query is done */
+               if (qry->flags & QUERY_RESOLVED) {
+                       kr_rplan_pop(rplan, qry);
+               }
                knot_overlay_reset(&request->overlay);
-               kr_rplan_pop(rplan, qry);
                return kr_rplan_empty(rplan) ? KNOT_STATE_DONE : KNOT_STATE_PRODUCE;
        }