| Summary: | changing folder name over the media protocol locks the folder | ||
|---|---|---|---|
| Product: | [Unmaintained] kio | Reporter: | tropikhajma <tropikhajma> |
| Component: | media | Assignee: | Kevin Ottens <ervin> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | ||
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Mandriva RPMs | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
tropikhajma
2005-08-16 23:48:24 UTC
Can reproduce this one, even in the 3.5 branch. SVN commit 464310 by ervin:
We have to plan a refresh of an item if it uses UDS_LOCAL_PATH.
Thanks to dfaure for the patch.
CCBUG:110932
M +9 -4 kdirlister.cpp
--- branches/KDE/3.5/kdelibs/kio/kio/kdirlister.cpp #464309:464310
@@ -755,10 +755,15 @@
KFileItem *fileitem = findByURL( 0, oldurl );
if ( fileitem )
{
- aboutToRefreshItem( fileitem );
- fileitem->setURL( dst );
- fileitem->refreshMimeType();
- emitRefreshItem( fileitem );
+ if ( !fileitem->isLocalFile() && !fileitem->localPath().isEmpty() ) // it uses UDS_LOCAL_PATH? ouch, needs an update then
+ FilesChanged( src );
+ else
+ {
+ aboutToRefreshItem( fileitem );
+ fileitem->setURL( dst );
+ fileitem->refreshMimeType();
+ emitRefreshItem( fileitem );
+ }
}
#ifdef DEBUG_CACHE
printDebug();
SVN commit 464311 by ervin:
We have to plan a refresh of an item if it uses UDS_LOCAL_PATH.
Thanks to dfaure for the patch.
(forward port)
BUG:110932
M +9 -4 kdirlister.cpp
--- trunk/KDE/kdelibs/kio/kio/kdirlister.cpp #464310:464311
@@ -761,10 +761,15 @@
KFileItem *fileitem = findByURL( 0, oldurl );
if ( fileitem )
{
- aboutToRefreshItem( fileitem );
- fileitem->setURL( dst );
- fileitem->refreshMimeType();
- emitRefreshItem( fileitem );
+ if ( !fileitem->isLocalFile() && !fileitem->localPath().isEmpty() ) // it uses UDS_LOCAL_PATH? ouch, needs an update then
+ FilesChanged( src );
+ else
+ {
+ aboutToRefreshItem( fileitem );
+ fileitem->setURL( dst );
+ fileitem->refreshMimeType();
+ emitRefreshItem( fileitem );
+ }
}
#ifdef DEBUG_CACHE
printDebug();
|