about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2007-01-24 18:32:23 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2007-01-24 18:32:23 +0000
commitf223e9b4ee528d3b6da604c2b0486a9384a88805 (patch)
tree43ac0b17b7a9fcf36e786c37891a19ee7e3827fd
parent3be13f0b14401e6b420f7a35c300b485cbc8b97a (diff)
downloadzsh-f223e9b4ee528d3b6da604c2b0486a9384a88805.tar.gz
zsh-f223e9b4ee528d3b6da604c2b0486a9384a88805.tar.xz
zsh-f223e9b4ee528d3b6da604c2b0486a9384a88805.zip
unposted: sched deleted timed function twice
-rw-r--r--ChangeLog4
-rw-r--r--Src/Builtins/sched.c5
2 files changed, 5 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index dc6d1644f..a7ed96ffb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2007-01-24  Peter Stephenson  <pws@csr.com>
 
+	* unposted: Src/Builtins/sched.c: minor error in sched that no
+	one's spotted yet: we deleted a timed function twice if
+	there was anything left in the list after we ran an event.
+
 	* 23131: Test/.distfiles, Test/D08cmdsubst.ztst: new tests for
 	command substitution.
 
diff --git a/Src/Builtins/sched.c b/Src/Builtins/sched.c
index c32a5f219..e4ccd98f6 100644
--- a/Src/Builtins/sched.c
+++ b/Src/Builtins/sched.c
@@ -97,11 +97,8 @@ checksched(void)
 	 */
 	if (schedcmds) {
 	    /*
-	     * We need to delete the function from the list again,
-	     * in case called code rescheduled.  This is almost
-	     * as cheap as checking if it's in the list already.
+	     * We've already delete the function from the list.
 	     */
-	    deltimedfn(checksched);
 	    DPUTS(timedfns && firstnode(timedfns), "BUG: already timed fn (1)");	    addtimedfn(checksched, schedcmds->time);
 	}
     }