diff --git a/daemon/worker.c b/daemon/worker.c
index 0a0c6b9ee527d152b8ab641ac24f7b968f85c444..60c6ff000907634ef7f75052df827cc547f49f57 100644
--- a/daemon/worker.c
+++ b/daemon/worker.c
@@ -363,7 +363,9 @@ static int request_start(struct request_ctx *ctx, knot_pkt_t *query)
 	if (!pkt) {
 		return kr_error(ENOMEM);
 	}
-	if (knot_pkt_copy(pkt, query) != 0) {
+
+	int ret = knot_pkt_copy(pkt, query);
+	if (ret != KNOT_EOK && ret != KNOT_ETRAIL) {
 		return kr_error(ENOMEM);
 	}
 	req->qsource.packet = pkt;