https://bugs.kde.org/show_bug.cgi?id=526668

Méven <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|                            |https://invent.kde.org/fram
                   |                            |eworks/kio/-/commit/6460cb2
                   |                            |322b34b7413b73fe7c5f5086479
                   |                            |56ac40
         Resolution|NOT A BUG                   |FIXED

--- Comment #2 from Méven <[email protected]> ---
Git commit 6460cb2322b34b7413b73fe7c5f508647956ac40 by Méven Car.
Committed on 12/10/2026 at 11:07.
Pushed by meven into branch 'master'.

Load samba usershares with asynchronous processes

Before this change, KSambaShare ran testparm and "net usershare info" in its
constructor, and runProcess() waited for each of them to finish.
KFileItem::overlays() creates the singleton when it looks for the emblem-shared
overlay on a local directory. So the first directory listing of an application
waited for both processes on the GUI thread. A slow "net usershare info" froze
Dolphin at startup.

The load now starts both processes with QProcess and continues from their
finished() signals. The share listing also runs that way when the usershare
directory changes. changed() is emitted, queued, once the shares are parsed.

isDirectoryShared() answers from what has been loaded so far. The getters of
the share set and add() and remove() wait for a running load with
waitForFinished(), because the share editing UI needs the whole set.

ksambashareloadtest replaces testparm and net in PATH. It checks that a getter
waits for the whole load when testparm fails to start.
Related: bug 446923, bug 513329

M  +8    -0    autotests/CMakeLists.txt
A  +66   -0    autotests/ksambashareloadtest.cpp     [License: LGPL(v2.0+)]
M  +24   -0    autotests/ksambasharetest.cpp
M  +2    -0    autotests/ksambasharetest.h
M  +136  -54   src/core/ksambashare.cpp
M  +15   -3    src/core/ksambashare_p.h

https://invent.kde.org/frameworks/kio/-/commit/6460cb2322b34b7413b73fe7c5f508647956ac40

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to