summaryrefslogtreecommitdiffstats
path: root/ChangeLog
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2004-12-16 19:36:14 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2004-12-16 19:36:14 (GMT)
commita0655d89bbe9e5b91b703509126ed1c48a1cf405 (patch)
treede437c399d4304e768cda1abe7dada3b80e3c57f /ChangeLog
parent96a4475c4aa4e7f173d328e2a6f37770ae35f497 (diff)
downloadtcl-a0655d89bbe9e5b91b703509126ed1c48a1cf405.zip
tcl-a0655d89bbe9e5b91b703509126ed1c48a1cf405.tar.gz
tcl-a0655d89bbe9e5b91b703509126ed1c48a1cf405.tar.bz2
Upgrade the capabilities of time limits by allowing them to fire in the midst
of the processing of the event loop or during a blocking [after]. [Bug 1085023]
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog20
1 files changed, 20 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 154fdfa..8ffd2ae 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,23 @@
+2004-12-16 Donal K. Fellows <donal.k.fellows@man.ac.uk>
+
+ * generic/tclInterp.c (Tcl_LimitSetTime, TimeLimitCallback):
+ (TclLimitRemoveAllHandlers, TclInitLimitSupport): Set a timer
+ event to trigger when the time limit runs out. All the time limit
+ actually does is check to see if the time limit has been exceeded,
+ but this is enough to fix [Bug 1085023].
+ * generic/tclInt.h (struct Interp): Added a field to hold the token
+ for the timer event handler associated with the current time limit.
+ * generic/tclEvent.c (Tcl_UpdateObjCmd, Tcl_VwaitObjCmd): Add
+ error message when limit exceeded.
+ * tests/interp.test (interp-34.[89]): Check that time limits
+ handle the two cases reported in [Bug 1085023]
+
+ * generic/tclTimer.c (TclCreateAbsoluteTimerHandler): New internal
+ function that allows setting a timer handler that will be
+ triggered at (or after) a specific time instead of at some number
+ of milliseconds in the future. This is a candidate for future
+ exposure via a TIP.
+
2004-12-15 Miguel Sofer <msofer@users.sf.net>
* generic/tclBasic.c: