}
};
-inline namespace v14_2_0 {
+inline namespace v15_2_0 {
-raw* create_foreign(temporary_buffer&& buf) {
- return new raw_seastar_foreign_ptr(std::move(buf));
+ceph::unique_leakable_ptr<buffer::raw> create_foreign(temporary_buffer&& buf) {
+ return ceph::unique_leakable_ptr<buffer::raw>(
+ new raw_seastar_foreign_ptr(std::move(buf)));
}
-raw* create(temporary_buffer&& buf) {
- return new raw_seastar_local_ptr(std::move(buf));
+ceph::unique_leakable_ptr<buffer::raw> create(temporary_buffer&& buf) {
+ return ceph::unique_leakable_ptr<buffer::raw>(
+ new raw_seastar_local_ptr(std::move(buf)));
}
-} // inline namespace v14_2_0
+} // inline namespace v15_2_0
// buffer::ptr conversions
list::operator seastar::net::packet() &&
{
seastar::net::packet p;
- p.reserve(_buffers.size());
+ p.reserve(_num);
for (auto& ptr : _buffers) {
// append each ptr as a temporary_buffer
p = seastar::net::packet(std::move(p), std::move(ptr));
buffer::ptr seastar_buffer_iterator::get_ptr(size_t len)
{
- buffer::raw* r = new raw_seastar_local_shared_ptr{buf};
- buffer::ptr p{r};
+ buffer::ptr p{ceph::unique_leakable_ptr<buffer::raw>(
+ new raw_seastar_local_shared_ptr{buf})};
p.set_length(len);
return p;
}