diff options
| author | Frank Reininghaus <[email protected]> | 2013-06-06 08:49:12 +0200 |
|---|---|---|
| committer | Frank Reininghaus <[email protected]> | 2013-06-06 08:49:12 +0200 |
| commit | f11456452333df76e80f8db49ed4da91e6cc9b32 (patch) | |
| tree | 6de217cdd4ec192ecf437b2028a0b0226f05f89f | |
| parent | e7a9d5590b8e4c0b11df6b4ef7c16db046208bca (diff) | |
Make calls to resolveNextPendingRoles and resolveNextSortRole delayed
This prevents that functions that call these indirectly call themselves
recursively and cause trouble.
BUG: 320791
| -rw-r--r-- | src/kitemviews/kfileitemmodelrolesupdater.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/kitemviews/kfileitemmodelrolesupdater.cpp b/src/kitemviews/kfileitemmodelrolesupdater.cpp index 644605c57..9bc288df1 100644 --- a/src/kitemviews/kfileitemmodelrolesupdater.cpp +++ b/src/kitemviews/kfileitemmodelrolesupdater.cpp @@ -898,12 +898,12 @@ void KFileItemModelRolesUpdater::startUpdating() startPreviewJob(itemsToResolve); // Determine the icons asynchronously as fast as possible. - resolveNextPendingRoles(); + QTimer::singleShot(0, this, SLOT(resolveNextPendingRoles())); } else { m_pendingIndexes = indexes; // Trigger the asynchronous resolving of all roles. m_state = ResolvingAllRoles; - resolveNextPendingRoles(); + QTimer::singleShot(0, this, SLOT(resolveNextPendingRoles())); } } @@ -1002,7 +1002,7 @@ void KFileItemModelRolesUpdater::updateChangedItems() // asynchronous determination of the sort role. killPreviewJob(); m_state = ResolvingSortRole; - resolveNextSortRole(); + QTimer::singleShot(0, this, SLOT(resolveNextSortRole())); } return; @@ -1050,7 +1050,7 @@ void KFileItemModelRolesUpdater::updateChangedItems() if (!resolvingInProgress) { // Trigger the asynchronous resolving of the changed roles. m_state = ResolvingAllRoles; - resolveNextPendingRoles(); + QTimer::singleShot(0, this, SLOT(resolveNextPendingRoles())); } } } |
