Commit 52904a1cf364813f373a4ebb55c27bef7c37dd96

Authored by m-holger
1 parent 88a62f78

Refactor `Buffer`: replace raw `new` with `std::make_unique` for safer and more …

…modern resource management.
Showing 1 changed file with 9 additions and 9 deletions
libqpdf/Buffer.cc
@@ -9,12 +9,12 @@ class Buffer::Members @@ -9,12 +9,12 @@ class Buffer::Members
9 friend class Buffer; 9 friend class Buffer;
10 10
11 public: 11 public:
12 - ~Members();  
13 -  
14 - private:  
15 Members(size_t size, unsigned char* buf, bool own_memory); 12 Members(size_t size, unsigned char* buf, bool own_memory);
16 Members(std::string&& content); 13 Members(std::string&& content);
17 Members(Members const&) = delete; 14 Members(Members const&) = delete;
  15 + ~Members();
  16 +
  17 + private:
18 18
19 std::string str; 19 std::string str;
20 bool own_memory; 20 bool own_memory;
@@ -50,27 +50,27 @@ Buffer::Members::~Members() @@ -50,27 +50,27 @@ Buffer::Members::~Members()
50 } 50 }
51 51
52 Buffer::Buffer() : 52 Buffer::Buffer() :
53 - m(new Members(0, nullptr, true)) 53 + m(std::make_unique<Members>(0, nullptr, true))
54 { 54 {
55 } 55 }
56 56
57 Buffer::Buffer(size_t size) : 57 Buffer::Buffer(size_t size) :
58 - m(new Members(size, nullptr, true)) 58 + m(std::make_unique<Members>(size, nullptr, true))
59 { 59 {
60 } 60 }
61 61
62 Buffer::Buffer(std::string&& content) : 62 Buffer::Buffer(std::string&& content) :
63 - m(new Members(std::move(content))) 63 + m(std::make_unique<Members>(std::move(content)))
64 { 64 {
65 } 65 }
66 66
67 Buffer::Buffer(unsigned char* buf, size_t size) : 67 Buffer::Buffer(unsigned char* buf, size_t size) :
68 - m(new Members(size, buf, false)) 68 + m(std::make_unique<Members>(size, buf, false))
69 { 69 {
70 } 70 }
71 71
72 Buffer::Buffer(std::string& content) : 72 Buffer::Buffer(std::string& content) :
73 - m(new Members(content.size(), reinterpret_cast<unsigned char*>(content.data()), false)) 73 + m(std::make_unique<Members>(content.size(), reinterpret_cast<unsigned char*>(content.data()), false))
74 { 74 {
75 } 75 }
76 76
@@ -92,7 +92,7 @@ void @@ -92,7 +92,7 @@ void
92 Buffer::copy(Buffer const& rhs) 92 Buffer::copy(Buffer const& rhs)
93 { 93 {
94 if (this != &rhs) { 94 if (this != &rhs) {
95 - m = std::unique_ptr<Members>(new Members(rhs.m->size, nullptr, true)); 95 + m = std::make_unique<Members>(rhs.m->size, nullptr, true);
96 if (m->size) { 96 if (m->size) {
97 memcpy(m->buf, rhs.m->buf, m->size); 97 memcpy(m->buf, rhs.m->buf, m->size);
98 } 98 }