[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/KDE/4.2/kdelibs/kio/kio
From: David Faure <faure () kde ! org>
Date: 2009-03-26 16:28:48
Message-ID: 1238084928.764987.9372.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 944994 by dfaure:
Don't make the source dir "disappear" (visually, it was still there on disk) if there \
was an error while removing one of its subdir (e.g. wrong encoding). This fix will be \
in 4.2.2 (just in time).
BUG: 187868
This is a more refined version of the fix for #118593 (retested, still works).
CCBUG: 118593
M +4 -4 copyjob.cpp
--- branches/KDE/4.2/kdelibs/kio/kio/copyjob.cpp #944993:944994
@@ -153,7 +153,7 @@
QList<CopyInfo> dirs;
KUrl::List dirsToRemove;
KUrl::List m_srcList;
- KUrl::List m_successSrcList;
+ KUrl::List m_successSrcList; // Entries in m_srcList that have successfully been \
moved KUrl::List::const_iterator m_currentStatSrc;
bool m_bCurrentSrcIsDir;
bool m_bCurrentOperationIsLink;
@@ -853,7 +853,6 @@
{
//this is required for the undo feature
emit q->copyingDone( q, (*it).uSource, (*it).uDest, (*it).mtime, true, false \
);
- m_successSrcList.append((*it).uSource);
m_directoriesCopied.append( *it );
dirs.erase( it );
}
@@ -1574,11 +1573,12 @@
void CopyJobPrivate::slotResultDeletingDirs( KJob * job )
{
Q_Q(CopyJob);
- if (job->error())
- {
+ if (job->error()) {
// Couldn't remove directory. Well, perhaps it's not empty
// because the user pressed Skip for a given file in it.
// Let's not display "Could not remove dir ..." for each of those dir !
+ } else {
+ m_successSrcList.append(static_cast<KIO::SimpleJob*>(job)->url());
}
q->removeSubjob( job );
assert( !q->hasSubjobs() );
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic