BranchWatchProxyModel: Avoid String Copies In filterAcceptsRow

This commit is contained in:
mitaclaw
2024-05-24 17:05:14 -07:00
parent 47fae68b0f
commit 7dc0bdd5df

View File

@ -141,15 +141,15 @@ bool BranchWatchProxyModel::filterAcceptsRow(int source_row, const QModelIndex&)
if (!m_origin_symbol_name.isEmpty()) if (!m_origin_symbol_name.isEmpty())
{ {
if (const QVariant& symbol_name_v = sourceModel()->GetSymbolList()[source_row].origin_name; if (const QVariant& symbol_name_v = sourceModel()->GetSymbolList()[source_row].origin_name;
!symbol_name_v.isValid() || !symbol_name_v.isValid() || !static_cast<const QString*>(symbol_name_v.data())
!symbol_name_v.value<QString>().contains(m_origin_symbol_name, Qt::CaseInsensitive)) ->contains(m_origin_symbol_name, Qt::CaseInsensitive))
return false; return false;
} }
if (!m_destin_symbol_name.isEmpty()) if (!m_destin_symbol_name.isEmpty())
{ {
if (const QVariant& symbol_name_v = sourceModel()->GetSymbolList()[source_row].destin_name; if (const QVariant& symbol_name_v = sourceModel()->GetSymbolList()[source_row].destin_name;
!symbol_name_v.isValid() || !symbol_name_v.isValid() || !static_cast<const QString*>(symbol_name_v.data())
!symbol_name_v.value<QString>().contains(m_destin_symbol_name, Qt::CaseInsensitive)) ->contains(m_destin_symbol_name, Qt::CaseInsensitive))
return false; return false;
} }
return true; return true;