Do we know of any Lazarus version where this worked correctly?
We need a version wehre this worked OK, so we can bisect the guilty revisison.
(I don't see any obvious candidates in the history of TSHellListView.)
I could reproduce the issue in a stand-alone program with just a TShellListView and a TButton.
In the button's onclick I free the TShellListView --> application freezes.
(All this on Linux x86_64, GTK2. No crash wth QT.)
If you hide the TShellListView before freeing it, the app remains responsive, but you get a crash on closing the app, and you still have to kill it.
I can't figure out what is so special about TShellListView that this happens, when it does not happen with a TListView.
Bart