diff options
author | Carsten Lohrke <carlo@gentoo.org> | 2007-05-08 19:32:56 +0000 |
---|---|---|
committer | Carsten Lohrke <carlo@gentoo.org> | 2007-05-08 19:32:56 +0000 |
commit | c4ef00585d91a1dd89be601c6938dc789f96f07d (patch) | |
tree | 94f5f31bbc13c4ffe49f66d1c9ada3c84ff82e6d /net-ftp/kftpgrabber | |
parent | Restore kdelibs-3.5.5-r10. (diff) | |
download | gentoo-2-c4ef00585d91a1dd89be601c6938dc789f96f07d.tar.gz gentoo-2-c4ef00585d91a1dd89be601c6938dc789f96f07d.tar.bz2 gentoo-2-c4ef00585d91a1dd89be601c6938dc789f96f07d.zip |
Fix for infinite recursion in CWD command.
(Portage version: 2.1.2.7)
Diffstat (limited to 'net-ftp/kftpgrabber')
5 files changed, 93 insertions, 4 deletions
diff --git a/net-ftp/kftpgrabber/ChangeLog b/net-ftp/kftpgrabber/ChangeLog index e1d8d478edfc..fcec63f0e247 100644 --- a/net-ftp/kftpgrabber/ChangeLog +++ b/net-ftp/kftpgrabber/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for net-ftp/kftpgrabber # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-ftp/kftpgrabber/ChangeLog,v 1.18 2007/04/28 13:06:11 carlo Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-ftp/kftpgrabber/ChangeLog,v 1.19 2007/05/08 19:32:56 carlo Exp $ + +*kftpgrabber-0.8.1-r1 (08 May 2007) + + 08 May 2007; Carsten Lohrke <carlo@gentoo.org> + +files/kftpgrabber-0.8.1-inf-recursion-fix.diff, + +kftpgrabber-0.8.1-r1.ebuild: + Fix for infinite recursion in CWD command. *kftpgrabber-0.8.1 (28 Apr 2007) diff --git a/net-ftp/kftpgrabber/files/digest-kftpgrabber-0.6.0 b/net-ftp/kftpgrabber/files/digest-kftpgrabber-0.6.0 index f30abb41279d..4d21c01bc06e 100644 --- a/net-ftp/kftpgrabber/files/digest-kftpgrabber-0.6.0 +++ b/net-ftp/kftpgrabber/files/digest-kftpgrabber-0.6.0 @@ -1,3 +1,3 @@ -MD5 549d4575fc0240c3ef9f249a7587d902 kftpgrabber-0.6.0.tar.bz2 1127926 -RMD160 d036f000dcfe7d189384c850ff8be3d91eb82669 kftpgrabber-0.6.0.tar.bz2 1127926 -SHA256 6f717053dbf138cccd73041814e5c0865cfd40bfb03402107fa5b3fcf3e43da1 kftpgrabber-0.6.0.tar.bz2 1127926 +MD5 734c0c49d37b9258235c235c2b14f3c6 kftpgrabber-0.6.0.tar.bz2 1123848 +RMD160 5fd005406cd89b3048f27285ffc85baaa05a0791 kftpgrabber-0.6.0.tar.bz2 1123848 +SHA256 0e9aa586aec1b116bd8c90112d8a763ee5f4b1b74711fc1fa6628e9422eccdcf kftpgrabber-0.6.0.tar.bz2 1123848 diff --git a/net-ftp/kftpgrabber/files/digest-kftpgrabber-0.8.1-r1 b/net-ftp/kftpgrabber/files/digest-kftpgrabber-0.8.1-r1 new file mode 100644 index 000000000000..9f097df4ad4f --- /dev/null +++ b/net-ftp/kftpgrabber/files/digest-kftpgrabber-0.8.1-r1 @@ -0,0 +1,3 @@ +MD5 77eb3ed5fa3a1c8c067fc50edd3e3302 kftpgrabber-0.8.1.tar.bz2 1350423 +RMD160 04cd1ee6f98e3795598cf9cff991d568c23a7cd8 kftpgrabber-0.8.1.tar.bz2 1350423 +SHA256 d0c4e412e0ea27bf35cfd3fea44802649e358ac80742cdb550546eb83d51f2c3 kftpgrabber-0.8.1.tar.bz2 1350423 diff --git a/net-ftp/kftpgrabber/files/kftpgrabber-0.8.1-inf-recursion-fix.diff b/net-ftp/kftpgrabber/files/kftpgrabber-0.8.1-inf-recursion-fix.diff new file mode 100644 index 000000000000..be19480ea522 --- /dev/null +++ b/net-ftp/kftpgrabber/files/kftpgrabber-0.8.1-inf-recursion-fix.diff @@ -0,0 +1,39 @@ +--- kftpgrabber/src/engine/ftpsocket.cpp 2007/04/29 10:50:17 659051 ++++ kftpgrabber/src/engine/ftpsocket.cpp 2007/05/03 15:56:28 660745 +@@ -1247,6 +1247,12 @@ + break; + } + case SentCwd: { ++ if (!socket()->getConfigInt("status.cwd")) { ++ // Change directory has failed and we should be silent (=error reporting is off) ++ socket()->resetCommandClass(); ++ return; ++ } ++ + // Check the directory listing cache + DirectoryListing cached = Cache::self()->findCached(socket(), socket()->getCurrentDirectory()); + if (cached.isValid()) { +@@ -1560,6 +1566,7 @@ + switch (currentState) { + case None: { + targetDirectory = socket()->getConfig("params.cwd.path"); ++ socket()->setConfig("status.cwd", 1); + + // If we are already there, no need to CWD + if (socket()->getCurrentDirectory() == targetDirectory) { +@@ -1608,6 +1615,7 @@ + socket()->emitError(socket()->getPreviousCommand() == Commands::CmdList ? ListFailed : FileNotFound); + socket()->resetCommandClass(Failed); + } else { ++ socket()->setConfig("status.cwd", 0); + socket()->resetCommandClass(); + } + } +@@ -1629,6 +1637,7 @@ + socket()->emitError(socket()->getPreviousCommand() == Commands::CmdList ? ListFailed : FileNotFound); + socket()->resetCommandClass(Failed); + } else { ++ socket()->setConfig("status.cwd", 0); + socket()->resetCommandClass(); + } + break; diff --git a/net-ftp/kftpgrabber/kftpgrabber-0.8.1-r1.ebuild b/net-ftp/kftpgrabber/kftpgrabber-0.8.1-r1.ebuild new file mode 100644 index 000000000000..063d845cd634 --- /dev/null +++ b/net-ftp/kftpgrabber/kftpgrabber-0.8.1-r1.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-ftp/kftpgrabber/kftpgrabber-0.8.1-r1.ebuild,v 1.1 2007/05/08 19:32:56 carlo Exp $ + +inherit kde + +IUSE="" +LANGS="bg br cs cy da de el en_GB es et fr ga gl hu it ja ka lt nl pl pt rw sk +sr sr@Latn sv tr zh_CN" +for X in ${LANGS} ; do + IUSE="${IUSE} linguas_${X}" +done + +DESCRIPTION="A graphical FTP client for KDE." +HOMEPAGE="http://kftpgrabber.sourceforge.net/" +SRC_URI="http://www.kftp.org/uploads/files/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND="dev-libs/openssl" +DEPEND="${RDEPEND} + >=sys-apps/sed-4" + +need-kde 3.5 + +PATCHES="${FILESDIR}/kftpgrabber-0.8.1-inf-recursion-fix.diff" + +src_unpack() { + kde_src_unpack + + local MAKE_LANGS + cd "${WORKDIR}/${P}/translations" + for X in ${LANGS} ; do + use linguas_${X} && MAKE_LANGS="${MAKE_LANGS} ${X}" + done + rm -f "${S}/configure" + sed -i -e "s:SUBDIRS=.*:SUBDIRS=${MAKE_LANGS}:" Makefile.am +} |