Index: generic/tclTimer.c
===================================================================
RCS file: /cvsroot/tcl/tcl/generic/tclTimer.c,v
retrieving revision 1.40
diff -u -p -u -p -r1.40 tclTimer.c
--- generic/tclTimer.c	7 Sep 2009 07:28:38 -0000	1.40
+++ generic/tclTimer.c	27 Nov 2009 13:09:30 -0000
@@ -1041,6 +1041,8 @@ AfterDelay(
 	    }
 	    if (diff > 0) {
 		Tcl_Sleep((long)diff);
+	    } else {
+		break;
 	    }
 	} else {
 	    diff = TCL_TIME_DIFF_MS(iPtr->limit.time, now);
@@ -1054,6 +1056,8 @@ AfterDelay(
 	    }
 	    if (diff > 0) {
 		Tcl_Sleep((long)diff);
+	    } else {
+		break;
 	    }
 	    if (Tcl_AsyncReady()) {
 		if (Tcl_AsyncInvoke(interp, TCL_OK) != TCL_OK) {
@@ -1270,6 +1274,8 @@ AfterCleanupProc(
  * mode: c
  * c-basic-offset: 4
  * fill-column: 78
+ * tab-width: 8
+ * indent-tabs-mode: nil
  * End:
  */
