diff --git a/daemon/bindings.c b/daemon/bindings.c
index d939d36f649c975b8ef34d872eccfed68c551954..9d21c59808cc845c6311660b9d6d405e0931e280 100644
--- a/daemon/bindings.c
+++ b/daemon/bindings.c
@@ -642,7 +642,7 @@ static int wrk_resolve(lua_State *L)
 	knot_pkt_put_question(pkt, dname, rrclass, rrtype);
 	knot_wire_set_rd(pkt->wire);
 	/* Add OPT RR */
-	pkt->opt_rr = knot_rrset_copy(worker->engine->resolver.opt_rr, &pkt->mm);
+	pkt->opt_rr = knot_rrset_copy(worker->engine->resolver.opt_rr, NULL);
 	if (!pkt->opt_rr) {
 		return kr_error(ENOMEM);
 	}	
@@ -658,6 +658,7 @@ static int wrk_resolve(lua_State *L)
 		ret = worker_resolve(worker, pkt, options, NULL, NULL);
 	}
 	
+	knot_rrset_free(&pkt->opt_rr, NULL);
 	knot_pkt_free(&pkt);
 	lua_pushboolean(L, ret == 0);
 	return 1;