On Thu, Oct 06, 2005 at 02:48:07PM +0200, Michael Petuschak wrote: > Hi Alexander, > > > Probably this bug is fixed in 3.3.1rc2, please test. > > Unfortunatelly, it's not:
Ok, it is another problem. Here is a patch, please test. BTW, ElectricFence is invaluable for finding such bugs. -- Alexander.
Index: Job.cc =================================================================== RCS file: /home/lav/cvsroot/lftp/src/Job.cc,v retrieving revision 1.30 diff -u -p -r1.30 Job.cc --- Job.cc 5 Oct 2005 11:12:17 -0000 1.30 +++ Job.cc 6 Oct 2005 14:01:04 -0000 @@ -62,20 +62,14 @@ Job::~Job() if(scan->parent==this) { if(scan->jobno!=-1 && this->parent) - { scan->parent=this->parent; - scan=scan->next; - } - else if(!scan->deleting) + else { - Delete(scan); - scan=chain; + scan->parent=0; + scan->deleting=true; } - else - scan=scan->next; } - else - scan=scan->next; + scan=scan->next; } } // if parent waits for the job, make it stop