summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Black <dragonheart@gentoo.org>2004-08-26 21:15:09 +0000
committerDaniel Black <dragonheart@gentoo.org>2004-08-26 21:15:09 +0000
commit0ae6966dc2cc598d0b4f4ad54f7904bac4b1ca9d (patch)
treee517da3034402941b679b2eb6d1939b78652fb94 /net-ftp/lftp/files
parentadd local 'gkrellm' USE flag, to be used by x11-plugins/wmhdplop (diff)
downloadgentoo-2-0ae6966dc2cc598d0b4f4ad54f7904bac4b1ca9d.tar.gz
gentoo-2-0ae6966dc2cc598d0b4f4ad54f7904bac4b1ca9d.tar.bz2
gentoo-2-0ae6966dc2cc598d0b4f4ad54f7904bac4b1ca9d.zip
Memory leak fixed - thanks to Luke Macken in bug #61335. OSX fix thanks to Miguel Sousa Filipe in bug #61349"
Diffstat (limited to 'net-ftp/lftp/files')
-rw-r--r--net-ftp/lftp/files/digest-lftp-3.0.7-r11
-rw-r--r--net-ftp/lftp/files/lftp-3.0.7-memleak.patch84
2 files changed, 85 insertions, 0 deletions
diff --git a/net-ftp/lftp/files/digest-lftp-3.0.7-r1 b/net-ftp/lftp/files/digest-lftp-3.0.7-r1
new file mode 100644
index 000000000000..5449f3a1081c
--- /dev/null
+++ b/net-ftp/lftp/files/digest-lftp-3.0.7-r1
@@ -0,0 +1 @@
+MD5 7a7c0b7b81719d2993280efdcec91c49 lftp-3.0.7.tar.bz2 1219131
diff --git a/net-ftp/lftp/files/lftp-3.0.7-memleak.patch b/net-ftp/lftp/files/lftp-3.0.7-memleak.patch
new file mode 100644
index 000000000000..047bbc773447
--- /dev/null
+++ b/net-ftp/lftp/files/lftp-3.0.7-memleak.patch
@@ -0,0 +1,84 @@
+--- src/SMTask.cc 2004-08-03 07:34:37.000000000 -0400
++++ newsrc/SMTask.cc 2004-08-23 21:20:04.000000000 -0400
+@@ -221,6 +221,11 @@
+ return count;
+ }
+
++void SMTask::Cleanup()
++{
++ delete init_task;
++}
++
+ #include <errno.h>
+ #include "ResMgr.h"
+ ResDecl enospc_fatal ("xfer:disk-full-fatal","no",ResMgr::BoolValidate,ResMgr::NoClosure);
+--- src/SMTask.h 2004-08-02 06:47:44.000000000 -0400
++++ newsrc/SMTask.h 2004-08-23 21:19:35.000000000 -0400
+@@ -97,6 +97,8 @@
+ static int TaskCount();
+ static bool NonFatalError(int err);
+ static bool TemporaryNetworkError(int err);
++
++ static void Cleanup();
+ };
+
+ class SMTaskInit : public SMTask
+--- src/SignalHook.cc 2003-10-03 10:18:46.000000000 -0400
++++ newsrc/SignalHook.cc 2004-08-23 20:53:17.000000000 -0400
+@@ -93,3 +93,10 @@
+ Ignore(SIGXFSZ); // and EFBIG
+ #endif
+ }
++
++void SignalHook::Cleanup()
++{
++ delete [] counts;
++ delete [] old_handlers;
++ delete [] old_saved;
++}
+--- src/SignalHook.h 1999-10-04 13:45:40.000000000 -0400
++++ newsrc/SignalHook.h 2004-08-23 20:51:27.000000000 -0400
+@@ -49,6 +49,7 @@
+ static void RestoreAll();
+
+ static void ClassInit();
++ static void Cleanup();
+ };
+
+ #endif//SIGNALHOOK_H
+--- src/log.cc 2004-03-15 04:03:55.000000000 -0500
++++ newsrc/log.cc 2004-08-24 11:18:18.062682431 -0400
+@@ -125,6 +125,10 @@
+ Write(l,buf);
+ }
+
++void Log::Cleanup()
++{
++ delete global;
++}
+ Log::~Log()
+ {
+ CloseOutput();
+--- src/log.h 2004-02-04 16:40:06.000000000 -0500
++++ newsrc/log.h 2004-08-23 21:03:02.000000000 -0400
+@@ -84,6 +84,8 @@
+ void ShowPID(bool yes=true) { show_pid=yes; }
+ void ShowTime(bool yes=true) { show_time=yes; }
+ void ShowContext(bool yes=true) { show_context=yes; }
++
++ static void Cleanup();
+ };
+
+ #endif // LOG_H
+--- src/lftp.cc 2004-04-16 10:27:36.000000000 -0400
++++ newsrc/lftp.cc 2004-08-23 21:21:24.000000000 -0400
+@@ -421,6 +421,9 @@
+ ProcWait::DeleteAll();
+ DirColors::DeleteInstance();
+ IdNameCacheCleanup();
++ SignalHook::Cleanup();
++ Log::Cleanup();
++ SMTask::Cleanup();
+
+ // the tasks left: SMTaskInit, LsCache::ExpireHelper, Log::global.
+ int task_count=SMTask::TaskCount();