Skip to content

Commit

Permalink
Fix leak in the buffer vectorMembers when reading SIO frames
Browse files Browse the repository at this point in the history
  • Loading branch information
jmcarcell committed Apr 18, 2024
1 parent 43330a8 commit 812d695
Showing 1 changed file with 10 additions and 1 deletion.
11 changes: 10 additions & 1 deletion python/templates/SIOBlock.cc.jinja2
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,16 @@ void {{ block_class }}::read(sio::read_device& device, sio::version_type version
{% if VectorMembers %}
if (not m_subsetColl) {
{% for member in VectorMembers %}
m_buffers.vectorMembers->emplace_back("{{ member.full_type }}", new std::vector<{{ member.full_type }}>());
bool found = false;
for (const auto& [first, second] : *m_buffers.vectorMembers) {
if (first == "{{ member.full_type }}") {
found = true;
break;
}
}
if (!found) {
m_buffers.vectorMembers->emplace_back("{{ member.full_type }}", new std::vector<{{ member.full_type }}>());
}
{% endfor %}
//---- read vector members
auto* vecMemInfo = m_buffers.vectorMembers;
Expand Down

0 comments on commit 812d695

Please sign in to comment.