mirror of
https://github.com/d47081/qBittorrent.git
synced 2025-01-10 14:57:52 +00:00
Fix crashes due to invalid iterator use
Although the iterators are constant we are indirectly changing them.
Introduced by commit ac42ccb5e4
.
Closes #8633
This commit is contained in:
parent
aa122b062e
commit
758c70283f
@ -35,6 +35,7 @@
|
|||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
|
|
||||||
#include "base/bittorrent/session.h"
|
#include "base/bittorrent/session.h"
|
||||||
|
#include "base/global.h"
|
||||||
#include "categoryfiltermodel.h"
|
#include "categoryfiltermodel.h"
|
||||||
#include "categoryfilterproxymodel.h"
|
#include "categoryfilterproxymodel.h"
|
||||||
#include "guiiconprovider.h"
|
#include "guiiconprovider.h"
|
||||||
@ -232,8 +233,7 @@ void CategoryFilterWidget::removeCategory()
|
|||||||
void CategoryFilterWidget::removeUnusedCategories()
|
void CategoryFilterWidget::removeUnusedCategories()
|
||||||
{
|
{
|
||||||
auto session = BitTorrent::Session::instance();
|
auto session = BitTorrent::Session::instance();
|
||||||
for (auto i = session->categories().cbegin(); i != session->categories().cend(); ++i) {
|
for (const QString &category : copyAsConst(session->categories().keys())) {
|
||||||
const QString &category = i.key();
|
|
||||||
if (model()->data(static_cast<CategoryFilterProxyModel *>(model())->index(category), Qt::UserRole) == 0)
|
if (model()->data(static_cast<CategoryFilterProxyModel *>(model())->index(category), Qt::UserRole) == 0)
|
||||||
session->removeCategory(category);
|
session->removeCategory(category);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user