diff --git a/mutation_reader.cc b/mutation_reader.cc index 48d3e18b34..bd75bc4b23 100644 --- a/mutation_reader.cc +++ b/mutation_reader.cc @@ -158,7 +158,14 @@ make_lazy_reader(std::function make_reader) { } mutation_reader make_reader_returning(mutation m) { - return make_reader_returning_many({std::move(m)}); + return [m = std::move(m), done = false] () mutable { + if (done) { + return make_ready_future(); + } else { + done = true; + return make_ready_future(std::move(m)); + } + }; } mutation_reader make_reader_returning_many(std::vector mutations) {