Bug 213799

Summary: dolphin doesn't recognize changes when you followed a symlink
Product: [Applications] dolphin Reporter: Caleb Cushing <xenoterracide>
Component: generalAssignee: David Faure <faure>
Status: RESOLVED FIXED    
Severity: normal CC: faure
Priority: NOR    
Version: 16.12.2   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: splitpane view of bug

Description Caleb Cushing 2009-11-09 04:20:33 UTC
Version:            (using KDE 4.3.3)
OS:                Linux
Installed from:    Archlinux Packages

very simply put if you follow a symlink to a directory and you add a new file to that directory from say konsole, dolphin will not see the new file unless you start another instance.

test case

mkdir -p test/test
cd test
ln -s test lntest

now open a split pane dolphin to with one pane open to test/test and the other open to test/lntest

touch test/test.txt

attached screenshot shows my results
Comment 1 Caleb Cushing 2009-11-09 04:22:09 UTC
Created attachment 38201 [details]
splitpane view of bug
Comment 2 David Faure 2009-11-14 02:50:03 UTC
SVN commit 1048852 by dfaure:

Resolve symlinks otherwise we cannot be notified of changes in the directories we list and monitor.
BUG: 213799


 M  +7 -1      kio/kdirlister.cpp  
 M  +82 -8     tests/kdirlistertest.cpp  
 M  +3 -1      tests/kdirlistertest.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1048852
Comment 3 David Faure 2009-11-14 02:51:10 UTC
SVN commit 1048853 by dfaure:

Cheat a bit with the root item: give it the view URL, rather than the dirlister url
(e.g. because KDirLister now resolves symlinks)
CCBUG: 213799


 M  +2 -0      dolphinpart.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1048853
Comment 4 David Faure 2009-12-21 22:17:49 UTC
SVN commit 1064817 by dfaure:

Fix 213799 again (kio doesn't notice changes in a symlink-to-a-directory) without
introducing the 219547 crash in treeviews (due to KDirModel seeing unexpected resolved urls).

The new strategy is: rather than resolve the url right away (and emit wrong items),
we just store the "resolved_path -> known_path(s)" association in a QHash, and look that up
when we are notified of changes.

Fixed for: 4.4 RC1
BUG: 219547
CCBUG: 213799


 M  +52 -14    kio/kdirlister.cpp  
 M  +14 -0     kio/kdirlister_p.h  
 M  +3 -0      tests/kdirlistertest.cpp  
 M  +8 -0      tests/kdirmodeltest.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1064817
Comment 5 David Faure 2010-01-21 17:15:28 UTC
SVN commit 1078132 by dfaure:

Backport fixes for 213799 and 219547: Fix lack of auto-update when viewing a directory via a symlink.
Fixed for: 4.3.5
CCBUG: 213799 219547


 M  +56 -12    kio/kdirlister.cpp  
 M  +14 -0     kio/kdirlister_p.h  
 M  +136 -6    tests/kdirlistertest.cpp  
 M  +3 -1      tests/kdirlistertest.h  
 M  +8 -0      tests/kdirmodeltest.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1078132