aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBryan Drewery <bdrewery@FreeBSD.org>2014-06-05 17:51:35 +0000
committerBryan Drewery <bdrewery@FreeBSD.org>2014-06-05 17:51:35 +0000
commit894568e29baef8caaec55d1aa6d520d87720963a (patch)
treec27d6bb858e9ef16de653e7d346704797cada08b
parenta17f6f16d497b3c43a410ea3fdc61fd82586f76a (diff)
downloadports-894568e29baef8caaec55d1aa6d520d87720963a.tar.gz
ports-894568e29baef8caaec55d1aa6d520d87720963a.zip
MFH: r356654
- Fix saving output with -o when using relative paths PR: 190158 Submitted by: emaste Approved by: luca.pizzamiglio@gmail.com (maintainer) Obtained from: http://sourceforge.net/p/kdiff3/code/ci/23ad423e4255c80ee22b269f73e20333f7c06678/
Notes
Notes: svn path=/branches/2014Q2/; revision=356655
-rw-r--r--textproc/kdiff3/Makefile3
-rw-r--r--textproc/kdiff3/files/patch-src-QT4__fileaccess.cpp48
-rw-r--r--textproc/kdiff3/files/patch-src-QT4__kdiff3.cpp11
3 files changed, 60 insertions, 2 deletions
diff --git a/textproc/kdiff3/Makefile b/textproc/kdiff3/Makefile
index 17528032f770..80f0dc82544a 100644
--- a/textproc/kdiff3/Makefile
+++ b/textproc/kdiff3/Makefile
@@ -3,8 +3,7 @@
PORTNAME= kdiff3
PORTVERSION= 0.9.97
-#PORTREVISION= 0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= textproc kde
MASTER_SITES= SF
diff --git a/textproc/kdiff3/files/patch-src-QT4__fileaccess.cpp b/textproc/kdiff3/files/patch-src-QT4__fileaccess.cpp
new file mode 100644
index 000000000000..35bb7c08a518
--- /dev/null
+++ b/textproc/kdiff3/files/patch-src-QT4__fileaccess.cpp
@@ -0,0 +1,48 @@
+--- ./src-QT4/fileaccess.cpp.orig 2012-08-10 16:51:08.000000000 -0500
++++ ./src-QT4/fileaccess.cpp 2014-06-05 09:45:18.675613156 -0500
+@@ -183,7 +183,8 @@
+
+ void FileAccess::setFile( const QFileInfo& fi, FileAccess* pParent )
+ {
+- m_filePath = nicePath( fi.filePath() ); // remove "./" at start
++ m_filePath = pParent == 0 ? fi.absoluteFilePath() :
++ nicePath( fi.filePath() ); // remove "./" at start
+
+ m_bSymLink = fi.isSymLink();
+ if ( m_bSymLink || (!m_bExists && m_filePath.contains("@@") ) )
+@@ -566,7 +567,16 @@
+ if ( parent() != 0 )
+ return parent()->absoluteFilePath() + "/" + m_filePath;
+ else
+- return m_filePath;
++ {
++ if ( m_filePath.isEmpty() )
++ return QString();
++
++ QFileInfo fi( m_filePath );
++ if ( fi.isAbsolute() )
++ return m_filePath;
++ else
++ return fi.absoluteFilePath(); // Probably never reached
++ }
+ } // Full abs path
+
+ // Just the name-part of the path, without parent directories
+@@ -1184,7 +1194,7 @@
+ m_bSuccess = false;
+ KIO::FileCopyJob* pJob = KIO::file_move( m_pFileAccess->url(), kurl, permissions, KIO::HideProgressInfo );
+ connect( pJob, SIGNAL(result(KJob*)), this, SLOT(slotSimpleJobResult(KJob*)));
+- connect( pJob, SIGNAL(percent(KJob*,unsigned long)), this, SLOT(slotPercent(KJob*, unsigned long)));
++ connect( pJob, SIGNAL(percent(KJob*,unsigned long)), &pp, SLOT(slotPercent(KJob*, unsigned long)));
+
+ ProgressProxy::enterEventLoop( pJob,
+ i18n("Renaming file: %1 -> %2",m_pFileAccess->prettyAbsPath(),dest) );
+@@ -1673,7 +1683,7 @@
+ &pp, SLOT( slotListDirInfoMessage(KJob*, const QString&) ));
+
+ // This line makes the transfer via fish unreliable.:-(
+- //connect( pListJob, SIGNAL(percent(KJob*,unsigned long)), this, SLOT(slotPercent(KJob*, unsigned long)));
++ //connect( pListJob, SIGNAL(percent(KJob*,unsigned long)), &pp, SLOT(slotPercent(KJob*, unsigned long)));
+
+ ProgressProxy::enterEventLoop( pListJob,
+ i18n("Listing directory: %1",m_pFileAccess->prettyAbsPath()) );
diff --git a/textproc/kdiff3/files/patch-src-QT4__kdiff3.cpp b/textproc/kdiff3/files/patch-src-QT4__kdiff3.cpp
new file mode 100644
index 000000000000..2dbd2c3d6026
--- /dev/null
+++ b/textproc/kdiff3/files/patch-src-QT4__kdiff3.cpp
@@ -0,0 +1,11 @@
+--- ./src-QT4/kdiff3.cpp.orig 2012-07-14 05:27:14.000000000 -0500
++++ ./src-QT4/kdiff3.cpp 2014-06-05 09:45:18.677611475 -0500
+@@ -210,6 +210,8 @@
+ m_outputFilename = args->getOption("output");
+ if ( m_outputFilename.isEmpty() )
+ m_outputFilename = args->getOption("out");
++ if ( ! m_outputFilename.isEmpty() )
++ m_outputFilename = FileAccess( m_outputFilename, true ).absoluteFilePath();
+ }
+
+ m_bAutoFlag = args!=0 && args->isSet("auto");