[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdevplatform/plugins/subversion
From:       Andreas Pakulat <apaku () gmx ! de>
Date:       2009-09-14 21:38:14
Message-ID: 1252964294.190630.5888.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1023531 by apaku:

Fix the checkout job, only allow to checkout into a non-existing
destination directory and use QFileInfo::canonicalFilePath only on the
parent dir of the destination as the function returns an empty string
for non-existing files.

 M  +4 -2      svncheckoutjob.cpp  


--- trunk/KDE/kdevplatform/plugins/subversion/svncheckoutjob.cpp #1023530:1023531
@@ -41,7 +41,7 @@
 bool SvnInternalCheckoutJob::isValid() const
 {
     QMutexLocker l( m_mutex );
-    return m_sourceRepository.isValid() && m_destinationDirectory.isLocalFile();
+    return m_sourceRepository.isValid() && m_destinationDirectory.isLocalFile() && \
!QFileInfo(m_destinationDirectory.toLocalFile()).exists() && \
QFileInfo(m_destinationDirectory.upUrl().toLocalFile()).exists();  }
 
 void SvnInternalCheckoutJob::run()
@@ -55,7 +55,9 @@
         KUrl desturl = KUrl( source().repositoryServer() );
         desturl.cleanPath(KUrl::SimplifyDirSeparators);
         QByteArray srcba = desturl.url( KUrl::RemoveTrailingSlash ).toUtf8();
-        QByteArray destba = QFileInfo( destination().toLocalFile() \
).canonicalFilePath().toUtf8(); +        KUrl destdir = KUrl(QFileInfo( \
destination().upUrl().toLocalFile() ).canonicalFilePath()); +        destdir.addPath( \
destination().fileName() ); +        QByteArray destba = \
destdir.toLocalFile().toUtf8();  kDebug(9510) << srcba << destba << recurse;
         svn_revnum_t rev = cli.checkout( srcba.data(), svn::Path( destba.data() ), \
svn::Revision::HEAD, recurse );  }catch( svn::ClientException ce )


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic