diff options
Diffstat (limited to 'src/gui/itemmodels/qfilesystemmodel.cpp')
| -rw-r--r-- | src/gui/itemmodels/qfilesystemmodel.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/gui/itemmodels/qfilesystemmodel.cpp b/src/gui/itemmodels/qfilesystemmodel.cpp index 622c2e5bc92..9eb31f1b6d4 100644 --- a/src/gui/itemmodels/qfilesystemmodel.cpp +++ b/src/gui/itemmodels/qfilesystemmodel.cpp @@ -1787,14 +1787,17 @@ bool QFileSystemModel::event(QEvent *event) bool QFileSystemModel::rmdir(const QModelIndex &aindex) { + Q_D(QFileSystemModel); + QString path = filePath(aindex); const bool success = QDir().rmdir(path); -#if QT_CONFIG(filesystemwatcher) if (success) { - QFileSystemModelPrivate * d = const_cast<QFileSystemModelPrivate*>(d_func()); +#if QT_CONFIG(filesystemwatcher) d->fileInfoGatherer->removePath(path); - } #endif + QFileSystemModelPrivate::QFileSystemNode *parentNode = d->node(aindex.parent()); + d->removeNode(parentNode, fileName(aindex)); + } return success; } |
