From 96a6fac144d34cba9596355d01ac7983ed948f43 Mon Sep 17 00:00:00 2001 From: hobbs Date: Mon, 7 Apr 2008 22:27:40 +0000 Subject: use kenny variant for 1936238 fix --- ChangeLog | 2 +- generic/tkArgv.c | 16 ++++------------ 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/ChangeLog b/ChangeLog index 34a0585..46e072d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,6 @@ 2008-04-07 Jeff Hobbs - * generic/tkArgv.c: fix -help mem explosion. [Bug 1936238] (bachmann) + * generic/tkArgv.c: fix -help mem explosion. [Bug 1936238] (kenny) 2008-04-04 Pat Thoyts diff --git a/generic/tkArgv.c b/generic/tkArgv.c index 55fe45e..0e60295 100644 --- a/generic/tkArgv.c +++ b/generic/tkArgv.c @@ -10,7 +10,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkArgv.c,v 1.12 2008/04/07 18:39:36 hobbs Exp $ + * RCS: @(#) $Id: tkArgv.c,v 1.13 2008/04/07 22:27:41 hobbs Exp $ */ #include "tkInt.h" @@ -337,10 +337,7 @@ PrintUsage( * for default options. */ { register Tk_ArgvInfo *infoPtr; - size_t width, i; - int numSpaces; /* must be int to allow for negative values */ -#define NUM_SPACES 20 - static char spaces[] = " "; + size_t width, i, numSpaces; char tmp[TCL_DOUBLE_SPACE]; /* @@ -373,13 +370,8 @@ PrintUsage( } Tcl_AppendResult(interp, "\n ", infoPtr->key, ":", NULL); numSpaces = width + 1 - strlen(infoPtr->key); - while (numSpaces > 0) { - if (numSpaces >= NUM_SPACES) { - Tcl_AppendResult(interp, spaces, NULL); - } else { - Tcl_AppendResult(interp, spaces+NUM_SPACES-numSpaces,NULL); - } - numSpaces -= NUM_SPACES; + while (numSpaces-- > 0) { + Tcl_AppendResult(interp, " ", NULL); } Tcl_AppendResult(interp, infoPtr->help, NULL); switch (infoPtr->type) { -- cgit v0.12