Bug 423499 - KFileItem::iconName ignorant of isSlow() and can block gui thread
Summary: KFileItem::iconName ignorant of isSlow() and can block gui thread
Status: REPORTED
Alias: None
Product: frameworks-kio
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: git master
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: KIO Bugs
URL:
Keywords:
Depends on:
Blocks: 423082
  Show dependency treegraph
 
Reported: 2020-06-25 13:44 UTC by Harald Sitter
Modified: 2023-02-06 00:56 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Harald Sitter 2020-06-25 13:44:09 UTC
```
    if (isLocalUrl && !delaySlowOperations && isDir()) {
        if (isDirectoryMounted(url)) {
            d->m_iconName = iconFromDirectoryFile(url.toLocalFile());

```

if the file system is a mounted sshfs or cifs we'll read the .directory files but really we shouldn't because they are network bound and may be slow. Furthermore they may be backed by HDDs which may crumble under stress. Since iconFromDirectoryFile does blocking POSIX reads this effectively means the gui thread will block on slow network mounts.

isSlow() should be taken into consideration somewhere in that block.