diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/downloadlist.cpp | 4 | ||||
| -rw-r--r-- | src/modlistviewactions.cpp | 3 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/downloadlist.cpp b/src/downloadlist.cpp index 1f6dd4b2..6624e9ae 100644 --- a/src/downloadlist.cpp +++ b/src/downloadlist.cpp @@ -226,7 +226,7 @@ bool DownloadList::lessThanPredicate(const QModelIndex &left, const QModelIndex if ((leftIndex < m_manager.numTotalDownloads())
&& (rightIndex < m_manager.numTotalDownloads())) {
if (left.column() == DownloadList::COL_NAME) {
- return m_manager.getFileName(left.row()).compare(m_manager.getFileName(right.row()), Qt::CaseInsensitive) < 0;
+ return left.data(Qt::DisplayRole).toString().compare(right.data(Qt::DisplayRole).toString(), Qt::CaseInsensitive) < 0;
} else if (left.column() == DownloadList::COL_MODNAME) {
QString leftName, rightName;
@@ -275,7 +275,7 @@ bool DownloadList::lessThanPredicate(const QModelIndex &left, const QModelIndex if (leftState == rightState)
return m_manager.getFileTime(left.row()) < m_manager.getFileTime(right.row());
else
- return leftState > rightState;
+ return leftState < rightState;
} else if (left.column() == DownloadList::COL_SIZE) {
return m_manager.getFileSize(left.row()) < m_manager.getFileSize(right.row());
} else if (left.column() == DownloadList::COL_FILETIME) {
diff --git a/src/modlistviewactions.cpp b/src/modlistviewactions.cpp index c11f4ea8..acf765f6 100644 --- a/src/modlistviewactions.cpp +++ b/src/modlistviewactions.cpp @@ -145,9 +145,10 @@ void ModListViewActions::createEmptyMod(const QModelIndex& index) const return; } + // find the priority before refresh() otherwise the index might not be valid + const int newPriority = findInstallPriority(index); m_core.refresh(); - const int newPriority = findInstallPriority(index); const auto mIndex = ModInfo::getIndex(name); if (newPriority >= 0) { m_core.modList()->changeModPriority(mIndex, newPriority); |
