diff --git a/test/integration/fake_upstream.cc b/test/integration/fake_upstream.cc index 265eccaab95f5..9ee1b2596c1b1 100644 --- a/test/integration/fake_upstream.cc +++ b/test/integration/fake_upstream.cc @@ -64,8 +64,9 @@ void FakeStream::encodeData(uint64_t size, bool end_stream) { } void FakeStream::encodeData(Buffer::Instance& data, bool end_stream) { - parent_.connection().dispatcher().post([this, &data, end_stream]() - -> void { encoder_.encodeData(data, end_stream); }); + std::shared_ptr data_copy(new Buffer::OwnedImpl(data)); + parent_.connection().dispatcher().post( + [this, data_copy, end_stream]() -> void { encoder_.encodeData(*data_copy, end_stream); }); } void FakeStream::encodeTrailers(const Http::HeaderMapImpl& trailers) {