Fix SF bug #763637, 2.3b2 unpack tuple of wrong size in after_cancel
Tk 8.4 may return different values than 8.3. This fix should handle
either version.
diff --git a/Lib/lib-tk/Tkinter.py b/Lib/lib-tk/Tkinter.py
index 11dae12..b5b0af3 100644
--- a/Lib/lib-tk/Tkinter.py
+++ b/Lib/lib-tk/Tkinter.py
@@ -475,8 +475,10 @@
Identifier returned by after or after_idle must be
given as first parameter."""
try:
- (script, type) = self.tk.splitlist(
- self.tk.call('after', 'info', id))
+ data = self.tk.call('after', 'info', id)
+ # In Tk 8.3, splitlist returns: (script, type)
+ # In Tk 8.4, splitlist may return (script, type) or (script,)
+ script = self.tk.splitlist(data)[0]
self.deletecommand(script)
except TclError:
pass