summaryrefslogtreecommitdiff
path: root/src/downloadlistsortproxy.cpp
diff options
context:
space:
mode:
authorTannin <devnull@localhost>2014-08-25 21:07:29 +0200
committerTannin <devnull@localhost>2014-08-25 21:07:29 +0200
commitcc42e76f54a37a0af9704f3966fdb48625686c24 (patch)
tree365b08457b2bf8ea707add00085af797f366689b /src/downloadlistsortproxy.cpp
parent84598cbcbf08862fe02300bf3945b194df12ddfa (diff)
- bugfix: MO would report invalid index errors when downloading while download list is sorted by filetime descending
Diffstat (limited to 'src/downloadlistsortproxy.cpp')
-rw-r--r--src/downloadlistsortproxy.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/downloadlistsortproxy.cpp b/src/downloadlistsortproxy.cpp
index 9eb22655..31deba0b 100644
--- a/src/downloadlistsortproxy.cpp
+++ b/src/downloadlistsortproxy.cpp
@@ -35,9 +35,10 @@ void DownloadListSortProxy::updateFilter(const QString &filter)
bool DownloadListSortProxy::lessThan(const QModelIndex &left,
const QModelIndex &right) const
{
- int leftIndex = sourceModel()->data(left).toInt();
- int rightIndex = sourceModel()->data(right).toInt();
- if (leftIndex < m_Manager->numTotalDownloads()) {
+ int leftIndex = left.data().toInt();
+ int rightIndex = right.data().toInt();
+ if ((leftIndex < m_Manager->numTotalDownloads())
+ && (rightIndex < m_Manager->numTotalDownloads())) {
if (left.column() == DownloadList::COL_NAME) {
return m_Manager->getFileName(leftIndex).compare(m_Manager->getFileName(rightIndex), Qt::CaseInsensitive) < 0;
} else if (left.column() == DownloadList::COL_FILETIME) {