From f56e033eeeeef36def67329d2f3d67f1ef06483b Mon Sep 17 00:00:00 2001 From: hobbs Date: Thu, 6 Jan 2000 02:22:24 +0000 Subject: * library/entry.tcl: * library/focus.tcl: * library/listbox.tcl: * library/scale.tcl: * library/scrlbar.tcl: * library/tearoff.tcl: * library/text.tcl: * library/tkfbox.tcl: * library/xmfbox.tcl: fixed unprotected arg parsing through eval/after [Bug: 3943] --- library/entry.tcl | 4 ++-- library/listbox.tcl | 4 ++-- library/scale.tcl | 6 +++--- library/scrlbar.tcl | 9 +++++---- library/tearoff.tcl | 4 ++-- library/text.tcl | 4 ++-- library/tkfbox.tcl | 8 ++++---- library/xmfbox.tcl | 5 +++-- 8 files changed, 23 insertions(+), 21 deletions(-) diff --git a/library/entry.tcl b/library/entry.tcl index 379ef2d..9e51397 100644 --- a/library/entry.tcl +++ b/library/entry.tcl @@ -3,7 +3,7 @@ # This file defines the default bindings for Tk entry widgets and provides # procedures that help in implementing those bindings. # -# RCS: @(#) $Id: entry.tcl,v 1.10 1999/11/30 07:27:01 hobbs Exp $ +# RCS: @(#) $Id: entry.tcl,v 1.11 2000/01/06 02:22:24 hobbs Exp $ # # Copyright (c) 1992-1994 The Regents of the University of California. # Copyright (c) 1994-1997 Sun Microsystems, Inc. @@ -430,7 +430,7 @@ proc tkEntryAutoScan {w} { $w xview scroll -2 units tkEntryMouseSelect $w $x } - set tkPriv(afterId) [after 50 tkEntryAutoScan $w] + set tkPriv(afterId) [after 50 [list tkEntryAutoScan $w]] } # tkEntryKeySelect -- diff --git a/library/listbox.tcl b/library/listbox.tcl index cac83dd..5c95474 100644 --- a/library/listbox.tcl +++ b/library/listbox.tcl @@ -3,7 +3,7 @@ # This file defines the default bindings for Tk listbox widgets # and provides procedures that help in implementing those bindings. # -# RCS: @(#) $Id: listbox.tcl,v 1.8 1999/12/21 23:55:27 hobbs Exp $ +# RCS: @(#) $Id: listbox.tcl,v 1.9 2000/01/06 02:22:24 hobbs Exp $ # # Copyright (c) 1994 The Regents of the University of California. # Copyright (c) 1994-1995 Sun Microsystems, Inc. @@ -347,7 +347,7 @@ proc tkListboxAutoScan {w} { return } tkListboxMotion $w [$w index @$x,$y] - set tkPriv(afterId) [after 50 tkListboxAutoScan $w] + set tkPriv(afterId) [after 50 [list tkListboxAutoScan $w]] } # tkListboxUpDown -- diff --git a/library/scale.tcl b/library/scale.tcl index d1a7f07..4e71ac8 100644 --- a/library/scale.tcl +++ b/library/scale.tcl @@ -3,7 +3,7 @@ # This file defines the default bindings for Tk scale widgets and provides # procedures that help in implementing the bindings. # -# RCS: @(#) $Id: scale.tcl,v 1.5 1999/09/02 17:02:53 hobbs Exp $ +# RCS: @(#) $Id: scale.tcl,v 1.6 2000/01/06 02:22:24 hobbs Exp $ # # Copyright (c) 1994 The Regents of the University of California. # Copyright (c) 1994-1995 Sun Microsystems, Inc. @@ -211,12 +211,12 @@ proc tkScaleIncrement {w dir big repeat} { if {[string equal $repeat "again"]} { set tkPriv(afterId) [after [$w cget -repeatinterval] \ - tkScaleIncrement $w $dir $big again] + [list tkScaleIncrement $w $dir $big again]] } elseif {[string equal $repeat "initial"]} { set delay [$w cget -repeatdelay] if {$delay > 0} { set tkPriv(afterId) [after $delay \ - tkScaleIncrement $w $dir $big again] + [list tkScaleIncrement $w $dir $big again]] } } } diff --git a/library/scrlbar.tcl b/library/scrlbar.tcl index 31c940c..95cacae 100644 --- a/library/scrlbar.tcl +++ b/library/scrlbar.tcl @@ -3,7 +3,7 @@ # This file defines the default bindings for Tk scrollbar widgets. # It also provides procedures that help in implementing the bindings. # -# RCS: @(#) $Id: scrlbar.tcl,v 1.7 1999/10/20 01:02:24 hobbs Exp $ +# RCS: @(#) $Id: scrlbar.tcl,v 1.8 2000/01/06 02:22:24 hobbs Exp $ # # Copyright (c) 1994 The Regents of the University of California. # Copyright (c) 1994-1996 Sun Microsystems, Inc. @@ -198,11 +198,12 @@ proc tkScrollSelect {w element repeat} { } if {[string equal $repeat "again"]} { set tkPriv(afterId) [after [$w cget -repeatinterval] \ - tkScrollSelect $w $element again] + [list tkScrollSelect $w $element again]] } elseif {[string equal $repeat "initial"]} { set delay [$w cget -repeatdelay] if {$delay > 0} { - set tkPriv(afterId) [after $delay tkScrollSelect $w $element again] + set tkPriv(afterId) [after $delay \ + [list tkScrollSelect $w $element again]] } } } @@ -258,7 +259,7 @@ proc tkScrollDrag {w x y} { [expr {[lindex $tkPriv(initValues) 1] + $delta}] } else { set delta [expr {round($delta * [lindex $tkPriv(initValues) 0])}] - eval $w set [lreplace $tkPriv(initValues) 2 3 \ + eval [list $w] set [lreplace $tkPriv(initValues) 2 3 \ [expr {[lindex $tkPriv(initValues) 2] + $delta}] \ [expr {[lindex $tkPriv(initValues) 3] + $delta}]] } diff --git a/library/tearoff.tcl b/library/tearoff.tcl index c9e3231..7844057 100644 --- a/library/tearoff.tcl +++ b/library/tearoff.tcl @@ -2,7 +2,7 @@ # # This file contains procedures that implement tear-off menus. # -# RCS: @(#) $Id: tearoff.tcl,v 1.5 1999/09/02 17:02:53 hobbs Exp $ +# RCS: @(#) $Id: tearoff.tcl,v 1.6 2000/01/06 02:22:24 hobbs Exp $ # # Copyright (c) 1994 The Regents of the University of California. # Copyright (c) 1994-1997 Sun Microsystems, Inc. @@ -93,7 +93,7 @@ proc tkTearOffMenu {w {x 0} {y 0}} { set cmd [$w cget -tearoffcommand] if {[string compare $cmd ""]} { - uplevel #0 $cmd $w $menu + uplevel #0 $cmd [list $w $menu] } return $menu } diff --git a/library/text.tcl b/library/text.tcl index f3eb662..5df8bb5 100644 --- a/library/text.tcl +++ b/library/text.tcl @@ -3,7 +3,7 @@ # This file defines the default bindings for Tk text widgets and provides # procedures that help in implementing the bindings. # -# RCS: @(#) $Id: text.tcl,v 1.7 1999/09/02 17:02:53 hobbs Exp $ +# RCS: @(#) $Id: text.tcl,v 1.8 2000/01/06 02:22:24 hobbs Exp $ # # Copyright (c) 1992-1994 The Regents of the University of California. # Copyright (c) 1994-1997 Sun Microsystems, Inc. @@ -634,7 +634,7 @@ proc tkTextAutoScan {w} { return } tkTextSelectTo $w $tkPriv(x) $tkPriv(y) - set tkPriv(afterId) [after 50 tkTextAutoScan $w] + set tkPriv(afterId) [after 50 [list tkTextAutoScan $w]] } # tkTextSetCursor diff --git a/library/tkfbox.tcl b/library/tkfbox.tcl index 990a860..ef17c61 100644 --- a/library/tkfbox.tcl +++ b/library/tkfbox.tcl @@ -11,7 +11,7 @@ # files by clicking on the file icons or by entering a filename # in the "Filename:" entry. # -# RCS: @(#) $Id: tkfbox.tcl,v 1.12 1999/12/16 21:57:53 hobbs Exp $ +# RCS: @(#) $Id: tkfbox.tcl,v 1.13 2000/01/06 02:22:25 hobbs Exp $ # # Copyright (c) 1994-1998 Sun Microsystems, Inc. # @@ -150,7 +150,7 @@ proc tkIconList_AutoScan {w} { } tkIconList_Motion1 $w $x $y - set tkPriv(afterId) [after 50 tkIconList_AutoScan $w] + set tkPriv(afterId) [after 50 [list tkIconList_AutoScan $w]] } # Deletes all the items inside the canvas subwidget and reset the IconList's @@ -555,7 +555,7 @@ proc tkIconList_KeyPress {w key} { catch { after cancel $tkPriv(ILAccel,$w,afterId) } - set tkPriv(ILAccel,$w,afterId) [after 500 tkIconList_Reset $w] + set tkPriv(ILAccel,$w,afterId) [after 500 [list tkIconList_Reset $w]] } proc tkIconList_Goto {w text} { @@ -933,7 +933,7 @@ proc tkFDialog_UpdateWhenIdle {w} { if {[info exists data(updateId)]} { return } else { - set data(updateId) [after idle tkFDialog_Update $w] + set data(updateId) [after idle [list tkFDialog_Update $w]] } } diff --git a/library/xmfbox.tcl b/library/xmfbox.tcl index 02e18f1..3d168e6 100644 --- a/library/xmfbox.tcl +++ b/library/xmfbox.tcl @@ -4,7 +4,7 @@ # Unix platform. This implementation is used only if the # "tk_strictMotif" flag is set. # -# RCS: @(#) $Id: xmfbox.tcl,v 1.9 1999/11/24 20:59:06 hobbs Exp $ +# RCS: @(#) $Id: xmfbox.tcl,v 1.10 2000/01/06 02:22:25 hobbs Exp $ # # Copyright (c) 1996 Sun Microsystems, Inc. # @@ -786,7 +786,8 @@ proc tkListBoxKeyAccel_Key {w key} { catch { after cancel $tkPriv(lbAccel,$w,afterId) } - set tkPriv(lbAccel,$w,afterId) [after 500 tkListBoxKeyAccel_Reset $w] + set tkPriv(lbAccel,$w,afterId) [after 500 \ + [list tkListBoxKeyAccel_Reset $w]] } proc tkListBoxKeyAccel_Goto {w string} { -- cgit v0.12