mirror of
https://invent.kde.org/system/dolphin
synced 2024-10-28 03:21:56 +00:00
KFileItemModelRolesUpdater: only update the size for changed folders
When using inotify, we also receive signals for modified files, even if we only ask KDirWatch to watch the directory containing them. In that case, we must not set the size to -1 (which means "unknown number of items" for folders) temporarily, or we end up with an apparent file size of 2^64 - 1 bytes. BUG: 309740 FIXED-IN: 4.10.4 REVIEW: 110428
This commit is contained in:
parent
fffbb5b583
commit
e66c3221ce
|
@ -630,6 +630,13 @@ void KFileItemModelRolesUpdater::slotDirWatchDirty(const QString& path)
|
|||
if (getSizeRole || getIsExpandableRole) {
|
||||
const int index = m_model->index(KUrl(path));
|
||||
if (index >= 0) {
|
||||
if (!m_model->fileItem(index).isDir()) {
|
||||
// If INotify is used, KDirWatch issues the dirty() signal
|
||||
// also for changed files inside the directory, even if we
|
||||
// don't enable this behavior explicitly (see bug 309740).
|
||||
return;
|
||||
}
|
||||
|
||||
QHash<QByteArray, QVariant> data;
|
||||
|
||||
const int count = subItemsCount(path);
|
||||
|
|
Loading…
Reference in a new issue