summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVitaly Dyachkov <obyknovenius@me.com>2022-02-16 18:00:45 +0100
committerAndreas Kling <kling@serenityos.org>2022-02-16 19:51:01 +0100
commitb2e6ba8d7ff668e250410620b6b895bb8c756c82 (patch)
tree2d768686d94a60e567182ada745a72662f1cac90
parent4f19deb13be71182f1c7971b226a4dd2de07ee8d (diff)
downloadserenity-b2e6ba8d7ff668e250410620b6b895bb8c756c82.zip
LibGUI: Make a copy of source_rows before resizing it in sort_mapping()
-rw-r--r--Userland/Libraries/LibGUI/SortingProxyModel.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/Userland/Libraries/LibGUI/SortingProxyModel.cpp b/Userland/Libraries/LibGUI/SortingProxyModel.cpp
index 9d25de8662..805a2a4fa6 100644
--- a/Userland/Libraries/LibGUI/SortingProxyModel.cpp
+++ b/Userland/Libraries/LibGUI/SortingProxyModel.cpp
@@ -163,6 +163,8 @@ ModelIndex SortingProxyModel::parent_index(ModelIndex const& proxy_index) const
void SortingProxyModel::sort_mapping(Mapping& mapping, int column, SortOrder sort_order)
{
+ auto old_source_rows = mapping.source_rows;
+
int row_count = source().row_count(mapping.source_parent);
mapping.source_rows.resize(row_count);
mapping.proxy_rows.resize(row_count);
@@ -175,8 +177,6 @@ void SortingProxyModel::sort_mapping(Mapping& mapping, int column, SortOrder sor
return;
}
- auto old_source_rows = mapping.source_rows;
-
for (int i = 0; i < row_count; ++i)
mapping.source_rows[i] = i;