hidden directory crash - analysis..

Maksim Orlovich mo002j at mail.rochester.edu
Fri Feb 21 19:25:40 GMT 2003


Sorry for breaking the thread, responding from archives, so...

First of all: thanks for people who figured out how to reproduce this,
that's been very valuable; w/o your attention we'd still be scratching our
heads wondering how to reproduce this..

Minimal testcase:
~ with .directory setting showing of hidden files to true.
.kde w/o such a file.
Sidebar homedirectory tab open...
Expand the .kde node.

What happens:
When the node is expanded, in the handling code, before opening the new
directory, the code tells the KDirLister not to show the dot files any
longer (since that's the preference for the directory), and then calls
openURL. The dirlister first emits deletion messages for all the dot files
in the previous directory (and not just directories, despite the dirOnly
mode - KDirLister bug? - hence the assertion failures), among which is
the .kde directory just opened. The slot for that dutifully removes the
.kde listview item -- that is, the item we're handling an event for.

Things blow up.

Suggested fix:
Since I don't think it'd be backwards compatible to make
KDirLister::setShowDotFiles context dependent, the setting in the sidebar
treeview should probably be fixed to the one of the view's root directory. 
I'd do that myself, except:

1. Could some please tell me how to find the root directory of the sidebar
treeview?

2. I don't know how to detect config changes..

So I'd appreciate some help/advice from people that actually no the code

Oh, and IMHO, this is a showstopper for 3.1.1, since it's apparently a
fairly common crasher.







More information about the kfm-devel mailing list