Bug 52062 - after calculating size of a dir in properties dialog, dir is not accessible until a reload
Summary: after calculating size of a dir in properties dialog, dir is not accessible u...
Status: RESOLVED FIXED
Alias: None
Product: kio
Classification: Frameworks and Libraries
Component: fish (show other bugs)
Version: unspecified
Platform: openSUSE Linux
: NOR normal
Target Milestone: ---
Assignee: Jörg Walter
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-12-18 13:01 UTC by Oliver Sinnen
Modified: 2003-03-23 11:25 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Oliver Sinnen 2002-12-18 13:01:12 UTC
Version:            (using KDE 3.0.5)
Installed from:    SuSE
Compiler:          gcc version 3.2
OS:          Linux (i686) release 2.4.19-4GB

Using the fish kio slave to access a remote system, I calculate the size of a dir with the calculate bottom in the properties dialog. After that, the dir is not accesible any more, since fish reports that there are not premissions on the dir (000). After a reload the permissions are reported correctly.
Comment 1 Willy De la Court 2003-03-22 17:11:49 UTC
I can confirm this bug BUT i also see the same trouble using the ftp ioslave so
i think it has nothing to do with the ioslave but rather with konqueror's
properties dialog recommend to assign it to the konqueror developers
Comment 2 Willy De la Court 2003-03-23 11:25:44 UTC
Subject: Re: propertiesdialog and remote files gives problems in kfileitem.cpp

On Sunday 23 March 2003 10:46, David Faure wrote:
> On Saturday 22 March 2003 22:30, Willy De la Court wrote:
> > The last few hours i'v been trying to track down a bug i noticed and
> > confirmed.
> >
> > http://bugs.kde.org/show_bug.cgi?id=52062
> >
> > which is not only related to fish but is also noteced with ftp
> >
> > when using an ioslave to view a remote directory let it be fish or ftp
> > right clicking on any file in konquoror choosing properties changing some
> > permission and then clicking OK works ok when looking at the file in
> > another way say by using ls in a shell the changes are made. BUT
> > konquoror believes the file or dir has the time set to 01/01/70 01:00
> > size 0 owner and group are blank permissions are all blank.
> >
> > I finally traced down the path it follows
> >
> > propertiesdialog calls a dcop method with a list of urls that are changed
> >
> >   KDirNotify_stub allDirNotify("*", "KDirNotify*");
> >   allDirNotify.FilesChanged( lst );
> >
> > which is picked up by
> >
> > void KDirListerCache::FilesChanged( const KURL::List &fileList )
> > ...
> >       KFileItem* fileitem = findByURL( 0, *it );
> > ...
> >           fileitem->refresh();
> >
> > and calls the refresh() for that fileitem
> >
> > In KFileItem::refresh all the attributes of the FileItem are cleared and
> > then the init is called. BUT init does not do anything for remote files.
>
> Hmm, it sounds to me like
> 1) refresh() shouldn't clear the attributes of the KFileItem
>   if it's remote, knowing that init() won't recalc them
> 2) actually refreshing the stuff should be done somewhere else.
> I'd suggest letting KDirListerCache update the current dir instead of
> emitting "refreshItems" (with no new info yet).
> Can you test the attached patch?
>
> (Using NetAccess::stat here would _really_ be the wrong solution. If you
> change 10 files, you'd have to wait for 10 synchronous network access....)

Nice this seems to fix the problem
can you commit it?