File tree Expand file tree Collapse file tree 3 files changed +7
-18
lines changed Expand file tree Collapse file tree 3 files changed +7
-18
lines changed Original file line number Diff line number Diff line change 1313Buffer::Buffer () noexcept {
1414}
1515
16- Buffer::Buffer (const std::vector<unsigned char > &_buffer) noexcept :
17- buffer(_buffer) {
18- }
19-
2016void Buffer::clear () noexcept {
2117 buffer.clear ();
2218}
2319
24- void Buffer::write (char * str, long length) noexcept {
20+ void Buffer::write (char * str, unsigned long length) noexcept {
2521 buffer.insert (buffer.end (), str, str + length);
2622}
2723
@@ -45,13 +41,7 @@ void Buffer::merge(const Buffer &other) noexcept {
4541}
4642
4743std::string Buffer::bytes () const noexcept {
48- std::stringstream stream;
49-
50- unsigned long long size = buffer.size ();
51- for (unsigned long long i = 0 ; i < size; ++i)
52- stream << buffer[i];
53-
54- return stream.str ();
44+ return std::string (buffer.begin (), buffer.end ());
5545}
5646
5747std::string Buffer::flush () noexcept {
Original file line number Diff line number Diff line change 88 */
99
1010#pragma once
11- #include < vector >
12- #include < sstream >
11+ #include < deque >
12+ #include < string >
1313#include < exception>
1414
1515struct BufferOverflow : public std ::exception {};
1616
1717class Buffer {
1818public:
1919 Buffer () noexcept ;
20- Buffer (const std::vector<unsigned char >&) noexcept ;
2120
2221 void clear () noexcept ;
23- void write (char * str, long length) noexcept ;
22+ void write (char * str, unsigned long length) noexcept ;
2423 void discard (unsigned long long n);
2524
2625 unsigned long long size () const noexcept ;
@@ -102,5 +101,5 @@ class Buffer {
102101
103102 ~Buffer ();
104103private:
105- std::vector <unsigned char > buffer;
104+ std::deque <unsigned char > buffer;
106105};
Original file line number Diff line number Diff line change @@ -720,7 +720,7 @@ static zend_function_entry buffer_object_methods[] = {
720720};
721721
722722static zend_object* buffer_object_create (zend_class_entry *ce) {
723- buffer_object *objval = (buffer_object*) ecalloc ( 1 , sizeof (buffer_object) + zend_object_properties_size (ce));
723+ buffer_object *objval = (buffer_object*) emalloc ( sizeof (buffer_object) + zend_object_properties_size (ce));
724724
725725 zend_object* ret = buffer_object_to_zend_object (objval);
726726
You can’t perform that action at this time.
0 commit comments