Bug 105303

Summary: can't move images between folders
Product: [Applications] digikam Reporter: Nadav Kavalerchik <nadavkav>
Component: Database-AlbumsAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: caulier.gilles
Priority: NOR    
Version: 0.7.3   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
Latest Commit: Version Fixed In: 5.7.0

Description Nadav Kavalerchik 2005-05-08 19:34:01 UTC
Version:           0.7.3-beta1 (using KDE KDE 3.4.0)
Installed from:    Fedora RPMs
OS:                Linux

trying to drag and drop images between folders with the Move option selected returns "error unknown" in a small dialog box with  only the word "rename" and a button OK to push. the move operation is not preformed ! ( choosing copy works just fine . and a later deleting of the image works too )
this bug doesn't happen when dragging between folders created with digikam , thou .
Comment 1 Renchi Raju 2005-05-08 19:41:19 UTC
are you, by any chance, using symlinks to link folders/files into the digikam album library path?
Comment 2 Nadav Kavalerchik 2005-05-09 08:47:24 UTC
yee :-)
Comment 3 Renchi Raju 2005-05-11 16:59:39 UTC
SVN commit 412383 by pahlibar:

CCBUGS: 105303

give a more detailed info if user uses symlinks to external files/folders
in the album library path and then tries to move it. I'm not going to work
on this in the trunk (0.7.x series). The file copy/move kioslave will undergo 
a rewrite in the experimental branch to work well with kio::jobs and if 
necessary will be backported



 M  +16 -4     trunk/extragear/graphics/digikam/kioslave/digikamio.cpp  


--- trunk/extragear/graphics/digikam/kioslave/digikamio.cpp #412382:412383
@@ -550,7 +550,10 @@
             if (( errno == EACCES ) || (errno == EPERM)) 
                 error( KIO::ERR_ACCESS_DENIED, dest.path() );
             else if (errno == EXDEV) 
-                error( KIO::ERR_UNSUPPORTED_ACTION, QString::fromLatin1("rename"));
+                error( KIO::ERR_UNSUPPORTED_ACTION, QString("This folder is on a different "
+                                                            "filesystem through symlinks. "
+                                                            "Moving/Renaming files between "
+                                                            "them is currently unsupported"));
             else if (errno == EROFS)  // The file is on a read-only filesystem
                 error( KIO::ERR_CANNOT_DELETE, src.path() );
             else 
@@ -619,7 +622,10 @@
             if (( errno == EACCES ) || (errno == EPERM)) 
                 error( KIO::ERR_ACCESS_DENIED, dest.path() );
             else if (errno == EXDEV) 
-                error( KIO::ERR_UNSUPPORTED_ACTION, QString::fromLatin1("rename"));
+                error( KIO::ERR_UNSUPPORTED_ACTION, QString("This folder is on a different "
+                                                            "filesystem through symlinks. "
+                                                            "Moving/Renaming files between "
+                                                            "them is currently unsupported"));
             else if (errno == EROFS)  // The file is on a read-only filesystem
                 error( KIO::ERR_CANNOT_DELETE, src.path() );
             else 
@@ -682,7 +688,10 @@
             if (( errno == EACCES ) || (errno == EPERM)) 
                 error( KIO::ERR_ACCESS_DENIED, dest.path() );
             else if (errno == EXDEV) 
-                error( KIO::ERR_UNSUPPORTED_ACTION, QString::fromLatin1("rename"));
+                error( KIO::ERR_UNSUPPORTED_ACTION, QString("This file is on a different "
+                                                            "filesystem through symlinks. "
+                                                            "Moving/Renaming files between "
+                                                            "them is currently unsupported"));
             else if (errno == EROFS)  // The file is on a read-only filesystem
                 error( KIO::ERR_CANNOT_DELETE, src.path() );
             else 
@@ -741,7 +750,10 @@
             if (( errno == EACCES ) || (errno == EPERM)) 
                 error( KIO::ERR_ACCESS_DENIED, dest.path() );
             else if (errno == EXDEV) 
-                error( KIO::ERR_UNSUPPORTED_ACTION, QString::fromLatin1("rename"));
+                error( KIO::ERR_UNSUPPORTED_ACTION, QString("This file is on a different "
+                                                            "filesystem through symlinks. "
+                                                            "Moving/Renaming files between "
+                                                            "them is currently unsupported"));
             else if (errno == EROFS)  // The file is on a read-only filesystem
                 error( KIO::ERR_CANNOT_DELETE, src.path() );
             else 
Comment 4 Nadav Kavalerchik 2005-05-12 10:27:03 UTC
ok :-)
Comment 5 Renchi Raju 2005-07-15 00:40:10 UTC
this has been fixed in svn
Comment 6 Renchi Raju 2005-07-15 00:40:28 UTC
*** Bug has been marked as fixed ***.
Comment 7 caulier.gilles 2017-07-16 21:36:18 UTC
This problem is not reproducible since 5.0.0 as all digiKam KIO slave was
replaced by a multithreaded interface to play with database