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
commit07bae15d7cdb831f97719c940c411ba40dba8929 (patch)
treec35513f572156b45a6b587ec9d331e9fdf087962 /src/downloadlistsortproxy.cpp
parent778160cf0dc2353bb74df0e8cf0b922d71496f00 (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) {