diff options
| author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2016-03-04 15:41:59 (GMT) |
|---|---|---|
| committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2016-03-04 15:41:59 (GMT) |
| commit | 42e3af0d0ae489a65f7f3ce98429a394c0926c32 (patch) | |
| tree | 0149222f25fa8bd0c3a1cb50b3e71a5419cf6021 /macosx/tkMacOSXScale.c | |
| parent | 3fa224a2450a99a43c66f5f85951bcadb65430c2 (diff) | |
| parent | 2fd9fcf08d73f688888ef8784be0c5493b80d818 (diff) | |
| download | tk-tip_415.zip tk-tip_415.tar.gz tk-tip_415.tar.bz2 | |
merge trunktip_415
Diffstat (limited to 'macosx/tkMacOSXScale.c')
| -rw-r--r-- | macosx/tkMacOSXScale.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/macosx/tkMacOSXScale.c b/macosx/tkMacOSXScale.c index e6d93b4..c5a6f76 100644 --- a/macosx/tkMacOSXScale.c +++ b/macosx/tkMacOSXScale.c @@ -145,7 +145,7 @@ TkpDisplayScale( Tk_Window tkwin = scalePtr->tkwin; Tcl_Interp *interp = scalePtr->interp; int result; - char string[PRINT_CHARS]; + char string[TCL_DOUBLE_SPACE]; MacScale *macScalePtr = (MacScale *) clientData; Rect r; WindowRef windowRef; @@ -154,6 +154,7 @@ TkpDisplayScale( MacDrawable *macDraw; SInt32 initialValue, minValue, maxValue; UInt16 numTicks; + Tcl_DString buf; #ifdef TK_MAC_DEBUG_SCALE TkMacOSXDbgMsg("TkpDisplayScale"); @@ -171,7 +172,12 @@ TkpDisplayScale( if ((scalePtr->flags & INVOKE_COMMAND) && (scalePtr->command != NULL)) { Tcl_Preserve((ClientData) interp); sprintf(string, scalePtr->format, scalePtr->value); - result = Tcl_VarEval(interp, scalePtr->command, " ", string, NULL); + Tcl_DStringInit(&buf); + Tcl_DStringAppend(&buf, scalePtr->command, -1); + Tcl_DStringAppend(&buf, " ", -1); + Tcl_DStringAppend(&buf, string, -1); + result = Tcl_EvalEx(interp, Tcl_DStringValue(&buf), -1, 0); + Tcl_DStringFree(&buf); if (result != TCL_OK) { Tcl_AddErrorInfo(interp, "\n (command executed by scale)"); Tcl_BackgroundException(interp, result); |
