File tree Expand file tree Collapse file tree 2 files changed +19
-11
lines changed Expand file tree Collapse file tree 2 files changed +19
-11
lines changed Original file line number Diff line number Diff line change @@ -32,7 +32,22 @@ class StringBuffer {
3232 return node_->data ;
3333 }
3434
35- StringNode* save () {
35+ JsonString str () const {
36+ ARDUINOJSON_ASSERT (node_ != nullptr );
37+
38+ return JsonString (node_->data , node_->length );
39+ }
40+
41+ void save (VariantData* data) {
42+ data->setOwnedString (commitStringNode ());
43+ }
44+
45+ void saveRaw (VariantData* data) {
46+ data->setRawString (commitStringNode ());
47+ }
48+
49+ private:
50+ StringNode* commitStringNode () {
3651 ARDUINOJSON_ASSERT (node_ != nullptr );
3752 node_->data [size_] = 0 ;
3853 auto node = resources_->getString (adaptString (node_->data , size_));
@@ -52,13 +67,6 @@ class StringBuffer {
5267 return node;
5368 }
5469
55- JsonString str () const {
56- ARDUINOJSON_ASSERT (node_ != nullptr );
57-
58- return JsonString (node_->data , node_->length );
59- }
60-
61- private:
6270 ResourceManager* resources_;
6371 StringNode* node_ = nullptr ;
6472 size_t size_ = 0 ;
Original file line number Diff line number Diff line change @@ -305,7 +305,7 @@ class MsgPackDeserializer {
305305 if (err)
306306 return err;
307307
308- variant-> setOwnedString ( stringBuffer_.save () );
308+ stringBuffer_.save (variant );
309309 return DeserializationError::Ok;
310310 }
311311
@@ -334,7 +334,7 @@ class MsgPackDeserializer {
334334 if (err)
335335 return err;
336336
337- variant-> setRawString ( stringBuffer_.save () );
337+ stringBuffer_.saveRaw (variant );
338338 return DeserializationError::Ok;
339339 }
340340
@@ -412,7 +412,7 @@ class MsgPackDeserializer {
412412 if (!keyVariant)
413413 return DeserializationError::NoMemory;
414414
415- keyVariant-> setOwnedString ( stringBuffer_.save () );
415+ stringBuffer_.save (keyVariant );
416416 } else {
417417 member = 0 ;
418418 }
You can’t perform that action at this time.
0 commit comments