summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/VertexLoaderManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/VideoCommon/VertexLoaderManager.cpp')
-rw-r--r--Source/Core/VideoCommon/VertexLoaderManager.cpp21
1 files changed, 13 insertions, 8 deletions
diff --git a/Source/Core/VideoCommon/VertexLoaderManager.cpp b/Source/Core/VideoCommon/VertexLoaderManager.cpp
index c7a2f46bab..463094e66b 100644
--- a/Source/Core/VideoCommon/VertexLoaderManager.cpp
+++ b/Source/Core/VideoCommon/VertexLoaderManager.cpp
@@ -98,7 +98,7 @@ struct entry
};
}
-void AppendListToString(std::string* dest)
+std::string VertexLoadersToString()
{
std::lock_guard<std::mutex> lk(s_vertex_loader_map_lock);
std::vector<entry> entries;
@@ -106,19 +106,24 @@ void AppendListToString(std::string* dest)
size_t total_size = 0;
for (const auto& map_entry : s_vertex_loader_map)
{
- entry e;
- map_entry.second->AppendToString(&e.text);
- e.num_verts = map_entry.second->m_numLoadedVertices;
- entries.push_back(e);
+ entry e = {map_entry.second->ToString(),
+ static_cast<u64>(map_entry.second->m_numLoadedVertices)};
+
total_size += e.text.size() + 1;
+ entries.push_back(std::move(e));
}
+
sort(entries.begin(), entries.end());
- dest->reserve(dest->size() + total_size);
+
+ std::string dest;
+ dest.reserve(total_size);
for (const entry& entry : entries)
{
- *dest += entry.text;
- *dest += '\n';
+ dest += entry.text;
+ dest += '\n';
}
+
+ return dest;
}
void MarkAllDirty()