summaryrefslogtreecommitdiffstats
path: root/generic
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2022-06-22 09:57:59 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2022-06-22 09:57:59 (GMT)
commitbe82a786ad38b52bfc69d58e8d6c7fd76ccdb2d0 (patch)
tree824368563cac9fa5b4b909b9c56ddaa5950ea6dd /generic
parentbd318c224a11f1d626073b46597c0d921b658576 (diff)
downloadtk-be82a786ad38b52bfc69d58e8d6c7fd76ccdb2d0.zip
tk-be82a786ad38b52bfc69d58e8d6c7fd76ccdb2d0.tar.gz
tk-be82a786ad38b52bfc69d58e8d6c7fd76ccdb2d0.tar.bz2
Handle crash in handling "update". More WIP
Diffstat (limited to 'generic')
-rw-r--r--generic/tkButton.c6
-rw-r--r--generic/tkCanvas.c13
-rw-r--r--generic/tkConsole.c12
-rw-r--r--generic/tkEntry.c12
-rw-r--r--generic/tkImgBmap.c6
-rw-r--r--generic/tkImgPhoto.c21
-rw-r--r--generic/tkInt.decls4
-rw-r--r--generic/tkInt.h4
-rw-r--r--generic/tkIntDecls.h8
-rw-r--r--generic/tkListbox.c6
-rw-r--r--generic/tkMenu.c6
-rw-r--r--generic/tkMenubutton.c6
-rw-r--r--generic/tkMessage.c6
-rw-r--r--generic/tkOldTest.c6
-rw-r--r--generic/tkPanedWindow.c6
-rw-r--r--generic/tkScale.c6
-rw-r--r--generic/tkScrollbar.c6
-rw-r--r--generic/tkSquare.c8
-rw-r--r--generic/tkTest.c116
-rw-r--r--generic/tkText.c17
-rw-r--r--generic/tkWindow.c8
21 files changed, 145 insertions, 138 deletions
diff --git a/generic/tkButton.c b/generic/tkButton.c
index 430c336..ce12fa2 100644
--- a/generic/tkButton.c
+++ b/generic/tkButton.c
@@ -534,7 +534,7 @@ static char * ButtonVarProc(ClientData clientData,
Tcl_Interp *interp, const char *name1,
const char *name2, int flags);
static int ButtonWidgetObjCmd(ClientData clientData,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[]);
static int ConfigureButton(Tcl_Interp *interp, TkButton *butPtr,
int objc, Tcl_Obj *const objv[]);
@@ -673,7 +673,7 @@ ButtonCreate(
butPtr->tkwin = tkwin;
butPtr->display = Tk_Display(tkwin);
butPtr->interp = interp;
- butPtr->widgetCmd = Tcl_CreateObjCommand(interp, Tk_PathName(tkwin),
+ butPtr->widgetCmd = Tcl_CreateObjCommand2(interp, Tk_PathName(tkwin),
ButtonWidgetObjCmd, butPtr, ButtonCmdDeletedProc);
butPtr->type = type;
butPtr->optionTable = optionTable;
@@ -777,7 +777,7 @@ static int
ButtonWidgetObjCmd(
ClientData clientData, /* Information about button widget. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument values. */
{
TkButton *butPtr = (TkButton *)clientData;
diff --git a/generic/tkCanvas.c b/generic/tkCanvas.c
index 12939e6..6ad272d 100644
--- a/generic/tkCanvas.c
+++ b/generic/tkCanvas.c
@@ -234,7 +234,7 @@ static void CanvasSetOrigin(TkCanvas *canvasPtr,
int xOrigin, int yOrigin);
static void CanvasUpdateScrollbars(TkCanvas *canvasPtr);
static int CanvasWidgetCmd(void *clientData,
- Tcl_Interp *interp, int argc,
+ Tcl_Interp *interp, TkSizeT argc,
Tcl_Obj *const *argv);
static void CanvasWorldChanged(void *instanceData);
static int ConfigureCanvas(Tcl_Interp *interp,
@@ -712,7 +712,7 @@ Tk_CanvasObjCmd(
canvasPtr->tkwin = newWin;
canvasPtr->display = Tk_Display(newWin);
canvasPtr->interp = interp;
- canvasPtr->widgetCmd = Tcl_CreateObjCommand(interp,
+ canvasPtr->widgetCmd = Tcl_CreateObjCommand2(interp,
Tk_PathName(canvasPtr->tkwin), CanvasWidgetCmd, canvasPtr,
CanvasCmdDeletedProc);
canvasPtr->firstItemPtr = NULL;
@@ -829,7 +829,7 @@ static int
CanvasWidgetCmd(
void *clientData, /* Information about canvas widget. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
TkCanvas *canvasPtr = (TkCanvas *)clientData;
@@ -887,7 +887,8 @@ CanvasWidgetCmd(
break;
case CANV_BBOX: {
- int i, gotAny;
+ int gotAny;
+ TkSizeT i;
int x1 = 0, y1 = 0, x2 = 0, y2 = 0; /* Initializations needed only
* to prevent overcautious
* compiler warnings. */
@@ -1386,7 +1387,7 @@ CanvasWidgetCmd(
break;
}
case CANV_DELETE: {
- int i;
+ TkSizeT i;
Tcl_HashEntry *entryPtr;
for (i = 2; i < objc; i++) {
@@ -1927,7 +1928,7 @@ CanvasWidgetCmd(
} else if (Tcl_GetIndexFromObj(interp, objv[2], optionStrings,
"scan option", 0, &idx) != TCL_OK) {
result = TCL_ERROR;
- } else if ((objc != 5) && (objc != 6-idx)) {
+ } else if ((objc != 5) && (objc + idx != 6)) {
Tcl_WrongNumArgs(interp, 3, objv, idx?"x y":"x y ?gain?");
result = TCL_ERROR;
} else if ((Tcl_GetIntFromObj(interp, objv[3], &x) != TCL_OK)
diff --git a/generic/tkConsole.c b/generic/tkConsole.c
index d04d3aa..ba59109 100644
--- a/generic/tkConsole.c
+++ b/generic/tkConsole.c
@@ -52,14 +52,14 @@ static int ConsoleHandle(ClientData instanceData, int direction,
static int ConsoleInput(ClientData instanceData, char *buf, int toRead,
int *errorCode);
static int ConsoleObjCmd(ClientData clientData, Tcl_Interp *interp,
- int objc, Tcl_Obj *const objv[]);
+ TkSizeT objc, Tcl_Obj *const objv[]);
static int ConsoleOutput(ClientData instanceData, const char *buf,
int toWrite, int *errorCode);
static void ConsoleWatch(ClientData instanceData, int mask);
static void DeleteConsoleInterp(ClientData clientData);
static void InterpDeleteProc(ClientData clientData, Tcl_Interp *interp);
static int InterpreterObjCmd(ClientData clientData, Tcl_Interp *interp,
- int objc, Tcl_Obj *const objv[]);
+ TkSizeT objc, Tcl_Obj *const objv[]);
/*
* This structure describes the channel type structure for file based IO:
@@ -423,7 +423,7 @@ Tk_CreateConsoleWindow(
* Add console commands to the interp
*/
- token = Tcl_CreateObjCommand(interp, "console", ConsoleObjCmd, info,
+ token = Tcl_CreateObjCommand2(interp, "console", ConsoleObjCmd, info,
ConsoleDeleteProc);
info->refCount++;
@@ -432,7 +432,7 @@ Tk_CreateConsoleWindow(
* in the consoleInterp. The ref held by the consoleInterp delete
* handler takes care of us.
*/
- Tcl_CreateObjCommand(consoleInterp, "consoleinterp", InterpreterObjCmd,
+ Tcl_CreateObjCommand2(consoleInterp, "consoleinterp", InterpreterObjCmd,
info, NULL);
mainWindow = Tk_MainWindow(interp);
@@ -695,7 +695,7 @@ static int
ConsoleObjCmd(
ClientData clientData, /* Access to the console interp */
Tcl_Interp *interp, /* Current interpreter */
- int objc, /* Number of arguments */
+ TkSizeT objc, /* Number of arguments */
Tcl_Obj *const objv[]) /* Argument objects */
{
int index, result;
@@ -787,7 +787,7 @@ static int
InterpreterObjCmd(
ClientData clientData, /* */
Tcl_Interp *interp, /* Current interpreter */
- int objc, /* Number of arguments */
+ TkSizeT objc, /* Number of arguments */
Tcl_Obj *const objv[]) /* Argument objects */
{
int index, result = TCL_OK;
diff --git a/generic/tkEntry.c b/generic/tkEntry.c
index b291acd..106e4ad 100644
--- a/generic/tkEntry.c
+++ b/generic/tkEntry.c
@@ -434,7 +434,7 @@ static int EntryValueChanged(Entry *entryPtr,
static void EntryVisibleRange(Entry *entryPtr,
double *firstPtr, double *lastPtr);
static int EntryWidgetObjCmd(ClientData clientData,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[]);
static void EntryWorldChanged(ClientData instanceData);
static int GetEntryIndex(Tcl_Interp *interp, Entry *entryPtr,
@@ -446,7 +446,7 @@ static int InsertChars(Entry *entryPtr, TkSizeT index, const char *string);
*/
static int SpinboxWidgetObjCmd(ClientData clientData,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[]);
static int GetSpinboxElement(Spinbox *sbPtr, int x, int y);
static int SpinboxInvoke(Tcl_Interp *interp, Spinbox *sbPtr,
@@ -526,7 +526,7 @@ Tk_EntryObjCmd(
entryPtr->tkwin = tkwin;
entryPtr->display = Tk_Display(tkwin);
entryPtr->interp = interp;
- entryPtr->widgetCmd = Tcl_CreateObjCommand(interp,
+ entryPtr->widgetCmd = Tcl_CreateObjCommand2(interp,
Tk_PathName(entryPtr->tkwin), EntryWidgetObjCmd, entryPtr,
EntryCmdDeletedProc);
entryPtr->optionTable = optionTable;
@@ -600,7 +600,7 @@ static int
EntryWidgetObjCmd(
ClientData clientData, /* Information about entry widget. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
Entry *entryPtr = (Entry *)clientData;
@@ -3745,7 +3745,7 @@ Tk_SpinboxObjCmd(
entryPtr->tkwin = tkwin;
entryPtr->display = Tk_Display(tkwin);
entryPtr->interp = interp;
- entryPtr->widgetCmd = Tcl_CreateObjCommand(interp,
+ entryPtr->widgetCmd = Tcl_CreateObjCommand2(interp,
Tk_PathName(entryPtr->tkwin), SpinboxWidgetObjCmd, sbPtr,
EntryCmdDeletedProc);
entryPtr->optionTable = optionTable;
@@ -3837,7 +3837,7 @@ static int
SpinboxWidgetObjCmd(
ClientData clientData, /* Information about spinbox widget. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
Entry *entryPtr = (Entry *)clientData;
diff --git a/generic/tkImgBmap.c b/generic/tkImgBmap.c
index 023c14b..19fd1be 100644
--- a/generic/tkImgBmap.c
+++ b/generic/tkImgBmap.c
@@ -146,7 +146,7 @@ typedef struct ParseInfo {
*/
static int ImgBmapCmd(ClientData clientData, Tcl_Interp *interp,
- int argc, Tcl_Obj *const objv[]);
+ TkSizeT argc, Tcl_Obj *const objv[]);
static void ImgBmapCmdDeletedProc(ClientData clientData);
static void ImgBmapConfigureInstance(BitmapInstance *instancePtr);
static int ImgBmapConfigureModel(BitmapModel *modelPtr,
@@ -188,7 +188,7 @@ ImgBmapCreate(
modelPtr->tkModel = model;
modelPtr->interp = interp;
- modelPtr->imageCmd = Tcl_CreateObjCommand(interp, name, ImgBmapCmd,
+ modelPtr->imageCmd = Tcl_CreateObjCommand2(interp, name, ImgBmapCmd,
modelPtr, ImgBmapCmdDeletedProc);
modelPtr->width = modelPtr->height = 0;
modelPtr->data = NULL;
@@ -753,7 +753,7 @@ static int
ImgBmapCmd(
ClientData clientData, /* Information about the image model. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
static const char *const bmapOptions[] = {"cget", "configure", NULL};
diff --git a/generic/tkImgPhoto.c b/generic/tkImgPhoto.c
index 209de6f..957f075 100644
--- a/generic/tkImgPhoto.c
+++ b/generic/tkImgPhoto.c
@@ -185,11 +185,11 @@ static const Tk_ConfigSpec configSpecs[] = {
static void PhotoFormatThreadExitProc(ClientData clientData);
static int ImgPhotoCmd(ClientData clientData, Tcl_Interp *interp,
- int objc, Tcl_Obj *const objv[]);
+ TkSizeT objc, Tcl_Obj *const objv[]);
static int ParseSubcommandOptions(
struct SubcommandOptions *optPtr,
Tcl_Interp *interp, int allowedOptions,
- int *indexPtr, int objc, Tcl_Obj *const objv[]);
+ TkSizeT *indexPtr, TkSizeT objc, Tcl_Obj *const objv[]);
static void ImgPhotoCmdDeletedProc(ClientData clientData);
static int ImgPhotoConfigureModel(Tcl_Interp *interp,
PhotoModel *modelPtr, int objc,
@@ -405,7 +405,7 @@ ImgPhotoCreate(
memset(modelPtr, 0, sizeof(PhotoModel));
modelPtr->tkModel = model;
modelPtr->interp = interp;
- modelPtr->imageCmd = Tcl_CreateObjCommand(interp, name, ImgPhotoCmd,
+ modelPtr->imageCmd = Tcl_CreateObjCommand2(interp, name, ImgPhotoCmd,
modelPtr, ImgPhotoCmdDeletedProc);
modelPtr->palette = NULL;
modelPtr->pix32 = NULL;
@@ -447,7 +447,7 @@ static int
ImgPhotoCmd(
ClientData clientData, /* Information about photo model. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
static const char *const photoOptions[] = {
@@ -461,7 +461,8 @@ ImgPhotoCmd(
};
PhotoModel *modelPtr = (PhotoModel *)clientData;
- int result, index, x, y, width, height;
+ int result, x, y, width, height;
+ TkSizeT index;
struct SubcommandOptions options;
unsigned char *pixelPtr;
Tk_PhotoImageBlock block;
@@ -1662,10 +1663,10 @@ ParseSubcommandOptions(
Tcl_Interp *interp, /* Interpreter to use for reporting errors. */
int allowedOptions, /* Indicates which options are valid for the
* current command. */
- int *optIndexPtr, /* Points to a variable containing the current
+ TkSizeT *optIndexPtr, /* Points to a variable containing the current
* index in objv; this variable is updated by
* this function. */
- int objc, /* Number of arguments in objv[]. */
+ TkSizeT objc, /* Number of arguments in objv[]. */
Tcl_Obj *const objv[]) /* Arguments to be parsed. */
{
static const char *const compositingRules[] = {
@@ -1673,9 +1674,9 @@ ParseSubcommandOptions(
* TK_PHOTO_COMPOSITE_* constants. */
NULL
};
- TkSizeT length;
- int index, c, bit, currentBit;
- int values[4], numValues, maxValues, argIndex;
+ TkSizeT length, index, argIndex;
+ int c, bit, currentBit;
+ int values[4], numValues, maxValues;
const char *option, *expandedOption, *needed;
const char *const *listPtr;
Tcl_Obj *msgObj;
diff --git a/generic/tkInt.decls b/generic/tkInt.decls
index 28cddd2..31e8855 100644
--- a/generic/tkInt.decls
+++ b/generic/tkInt.decls
@@ -506,11 +506,11 @@ declare 154 {
# entries needed only by tktest:
declare 156 {
- int TkpTestembedCmd(ClientData clientData, Tcl_Interp *interp, int objc,
+ int TkpTestembedCmd(ClientData clientData, Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[])
}
declare 157 {
- int TkpTesttextCmd(ClientData dummy, Tcl_Interp *interp, int objc,
+ int TkpTesttextCmd(ClientData dummy, Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[])
}
declare 158 {
diff --git a/generic/tkInt.h b/generic/tkInt.h
index 21ef9ca..851ac66 100644
--- a/generic/tkInt.h
+++ b/generic/tkInt.h
@@ -1311,7 +1311,7 @@ MODULE_SCOPE int Tk_SelectionObjCmd(ClientData clientData,
Tcl_Interp *interp, int objc,
Tcl_Obj *const objv[]);
MODULE_SCOPE int Tk_SendObjCmd(ClientData clientData,
- Tcl_Interp *interp,int objc,
+ Tcl_Interp *interp,TkSizeT objc,
Tcl_Obj *const objv[]);
MODULE_SCOPE int Tk_SpinboxObjCmd(ClientData clientData,
Tcl_Interp *interp, int objc,
@@ -1499,7 +1499,7 @@ MODULE_SCOPE int TkUnsupported1ObjCmd(ClientData clientData,
* For Tktest.
*/
MODULE_SCOPE int SquareObjCmd(ClientData clientData,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
MODULE_SCOPE int TkOldTestInit(Tcl_Interp *interp);
#if !(defined(_WIN32) || defined(MAC_OSX_TK))
diff --git a/generic/tkIntDecls.h b/generic/tkIntDecls.h
index de7e9fc..9dfbd23 100644
--- a/generic/tkIntDecls.h
+++ b/generic/tkIntDecls.h
@@ -436,11 +436,11 @@ EXTERN void TkDeleteThreadExitHandler(Tcl_ExitProc *proc,
/* Slot 155 is reserved */
/* 156 */
EXTERN int TkpTestembedCmd(ClientData clientData,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[]);
/* 157 */
EXTERN int TkpTesttextCmd(ClientData dummy, Tcl_Interp *interp,
- int objc, Tcl_Obj *const objv[]);
+ TkSizeT objc, Tcl_Obj *const objv[]);
/* 158 */
EXTERN int TkSelGetSelection(Tcl_Interp *interp,
Tk_Window tkwin, Atom selection, Atom target,
@@ -759,8 +759,8 @@ typedef struct TkIntStubs {
void (*tkCreateThreadExitHandler) (Tcl_ExitProc *proc, ClientData clientData); /* 153 */
void (*tkDeleteThreadExitHandler) (Tcl_ExitProc *proc, ClientData clientData); /* 154 */
void (*reserved155)(void);
- int (*tkpTestembedCmd) (ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[]); /* 156 */
- int (*tkpTesttextCmd) (ClientData dummy, Tcl_Interp *interp, int objc, Tcl_Obj *const objv[]); /* 157 */
+ int (*tkpTestembedCmd) (ClientData clientData, Tcl_Interp *interp, TkSizeT objc, Tcl_Obj *const objv[]); /* 156 */
+ int (*tkpTesttextCmd) (ClientData dummy, Tcl_Interp *interp, TkSizeT objc, Tcl_Obj *const objv[]); /* 157 */
int (*tkSelGetSelection) (Tcl_Interp *interp, Tk_Window tkwin, Atom selection, Atom target, Tk_GetSelProc *proc, ClientData clientData); /* 158 */
int (*tkTextGetIndex) (Tcl_Interp *interp, struct TkText *textPtr, const char *string, struct TkTextIndex *indexPtr); /* 159 */
int (*tkTextIndexBackBytes) (const struct TkText *textPtr, const struct TkTextIndex *srcPtr, int count, struct TkTextIndex *dstPtr); /* 160 */
diff --git a/generic/tkListbox.c b/generic/tkListbox.c
index 10ab4ee..ee35e0f 100644
--- a/generic/tkListbox.c
+++ b/generic/tkListbox.c
@@ -417,7 +417,7 @@ static int ListboxSelect(Listbox *listPtr,
static void ListboxUpdateHScrollbar(Listbox *listPtr);
static void ListboxUpdateVScrollbar(Listbox *listPtr);
static int ListboxWidgetObjCmd(ClientData clientData,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[]);
static int ListboxBboxSubCmd(Tcl_Interp *interp,
Listbox *listPtr, int index);
@@ -529,7 +529,7 @@ Tk_ListboxObjCmd(
listPtr->tkwin = tkwin;
listPtr->display = Tk_Display(tkwin);
listPtr->interp = interp;
- listPtr->widgetCmd = Tcl_CreateObjCommand(interp,
+ listPtr->widgetCmd = Tcl_CreateObjCommand2(interp,
Tk_PathName(listPtr->tkwin), ListboxWidgetObjCmd, listPtr,
ListboxCmdDeletedProc);
listPtr->optionTable = optionTables->listboxOptionTable;
@@ -601,7 +601,7 @@ static int
ListboxWidgetObjCmd(
ClientData clientData, /* Information about listbox widget. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Arguments as Tcl_Obj's. */
{
Listbox *listPtr = (Listbox *)clientData;
diff --git a/generic/tkMenu.c b/generic/tkMenu.c
index 4730575..7d5efb4 100644
--- a/generic/tkMenu.c
+++ b/generic/tkMenu.c
@@ -351,7 +351,7 @@ static char * MenuVarProc(ClientData clientData,
Tcl_Interp *interp, const char *name1,
const char *name2, int flags);
static int MenuWidgetObjCmd(ClientData clientData,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[]);
static void MenuWorldChanged(ClientData instanceData);
static int PostProcessEntry(TkMenuEntry *mePtr);
@@ -445,7 +445,7 @@ Tk_MenuObjCmd(
menuPtr->tkwin = newWin;
menuPtr->display = Tk_Display(newWin);
menuPtr->interp = interp;
- menuPtr->widgetCmd = Tcl_CreateObjCommand(interp,
+ menuPtr->widgetCmd = Tcl_CreateObjCommand2(interp,
Tk_PathName(menuPtr->tkwin), MenuWidgetObjCmd, menuPtr,
MenuCmdDeletedProc);
menuPtr->active = TCL_INDEX_NONE;
@@ -608,7 +608,7 @@ static int
MenuWidgetObjCmd(
ClientData clientData, /* Information about menu widget. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument strings. */
{
TkMenu *menuPtr = (TkMenu *)clientData;
diff --git a/generic/tkMenubutton.c b/generic/tkMenubutton.c
index 1843780..c3e91ab 100644
--- a/generic/tkMenubutton.c
+++ b/generic/tkMenubutton.c
@@ -165,7 +165,7 @@ static char * MenuButtonTextVarProc(ClientData clientData,
Tcl_Interp *interp, const char *name1,
const char *name2, int flags);
static int MenuButtonWidgetObjCmd(ClientData clientData,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[]);
static int ConfigureMenuButton(Tcl_Interp *interp,
TkMenuButton *mbPtr, int objc,
@@ -236,7 +236,7 @@ Tk_MenubuttonObjCmd(
mbPtr->tkwin = tkwin;
mbPtr->display = Tk_Display(tkwin);
mbPtr->interp = interp;
- mbPtr->widgetCmd = Tcl_CreateObjCommand(interp,
+ mbPtr->widgetCmd = Tcl_CreateObjCommand2(interp,
Tk_PathName(mbPtr->tkwin), MenuButtonWidgetObjCmd, mbPtr,
MenuButtonCmdDeletedProc);
mbPtr->optionTable = optionTable;
@@ -325,7 +325,7 @@ static int
MenuButtonWidgetObjCmd(
ClientData clientData, /* Information about button widget. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
TkMenuButton *mbPtr = (TkMenuButton *)clientData;
diff --git a/generic/tkMessage.c b/generic/tkMessage.c
index a5c3a2f..6150374 100644
--- a/generic/tkMessage.c
+++ b/generic/tkMessage.c
@@ -174,7 +174,7 @@ static char * MessageTextVarProc(ClientData clientData,
Tcl_Interp *interp, const char *name1,
const char *name2, int flags);
static int MessageWidgetObjCmd(ClientData clientData,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[]);
static void MessageWorldChanged(ClientData instanceData);
static void ComputeMessageGeometry(Message *msgPtr);
@@ -252,7 +252,7 @@ Tk_MessageObjCmd(
msgPtr->tkwin = tkwin;
msgPtr->display = Tk_Display(tkwin);
msgPtr->interp = interp;
- msgPtr->widgetCmd = Tcl_CreateObjCommand(interp,
+ msgPtr->widgetCmd = Tcl_CreateObjCommand2(interp,
Tk_PathName(msgPtr->tkwin), MessageWidgetObjCmd, msgPtr,
MessageCmdDeletedProc);
msgPtr->optionTable = optionTable;
@@ -304,7 +304,7 @@ static int
MessageWidgetObjCmd(
ClientData clientData, /* Information about message widget. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument strings. */
{
Message *msgPtr = (Message *)clientData;
diff --git a/generic/tkOldTest.c b/generic/tkOldTest.c
index b64b6cc..aebcad5 100644
--- a/generic/tkOldTest.c
+++ b/generic/tkOldTest.c
@@ -83,7 +83,7 @@ static Tk_ImageType imageType = {
*/
static int ImageObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
#endif
@@ -180,7 +180,7 @@ ImageCreate(
strcpy(timPtr->imageName, name);
timPtr->varName = (char *)ckalloc(strlen(varName) + 1);
strcpy(timPtr->varName, varName);
- Tcl_CreateObjCommand(interp, name, ImageObjCmd, timPtr, NULL);
+ Tcl_CreateObjCommand2(interp, name, ImageObjCmd, timPtr, NULL);
*clientDataPtr = timPtr;
Tk_ImageChanged(model, 0, 0, 30, 15, 30, 15);
return TCL_OK;
@@ -207,7 +207,7 @@ static int
ImageObjCmd(
ClientData clientData, /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument strings. */
{
TImageModel *timPtr = (TImageModel *)clientData;
diff --git a/generic/tkPanedWindow.c b/generic/tkPanedWindow.c
index 7147ad2..4e19ca3 100644
--- a/generic/tkPanedWindow.c
+++ b/generic/tkPanedWindow.c
@@ -199,7 +199,7 @@ static void ProxyWindowEventProc(void *clientData,
static void DisplayProxyWindow(void *clientData);
static void PanedWindowWorldChanged(void *instanceData);
static int PanedWindowWidgetObjCmd(void *clientData,
- Tcl_Interp *, int objc, Tcl_Obj * const objv[]);
+ Tcl_Interp *, TkSizeT objc, Tcl_Obj * const objv[]);
static void PanedWindowLostPaneProc(void *clientData,
Tk_Window tkwin);
static void PanedWindowReqProc(void *clientData,
@@ -442,7 +442,7 @@ Tk_PanedWindowObjCmd(
pwPtr->tkwin = tkwin;
pwPtr->display = Tk_Display(tkwin);
pwPtr->interp = interp;
- pwPtr->widgetCmd = Tcl_CreateObjCommand(interp,
+ pwPtr->widgetCmd = Tcl_CreateObjCommand2(interp,
Tk_PathName(pwPtr->tkwin), PanedWindowWidgetObjCmd, pwPtr,
PanedWindowCmdDeletedProc);
pwPtr->optionTable = pwOpts->pwOptions;
@@ -532,7 +532,7 @@ static int
PanedWindowWidgetObjCmd(
void *clientData, /* Information about square widget. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj * const objv[]) /* Argument objects. */
{
PanedWindow *pwPtr = (PanedWindow *)clientData;
diff --git a/generic/tkScale.c b/generic/tkScale.c
index 8245f97..921984f 100644
--- a/generic/tkScale.c
+++ b/generic/tkScale.c
@@ -162,7 +162,7 @@ static char * ScaleVarProc(ClientData clientData,
Tcl_Interp *interp, const char *name1,
const char *name2, int flags);
static int ScaleWidgetObjCmd(ClientData clientData,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[]);
static void ScaleWorldChanged(ClientData instanceData);
static void ScaleSetVariable(TkScale *scalePtr);
@@ -279,7 +279,7 @@ Tk_ScaleObjCmd(
scalePtr->tkwin = tkwin;
scalePtr->display = Tk_Display(tkwin);
scalePtr->interp = interp;
- scalePtr->widgetCmd = Tcl_CreateObjCommand(interp,
+ scalePtr->widgetCmd = Tcl_CreateObjCommand2(interp,
Tk_PathName(scalePtr->tkwin), ScaleWidgetObjCmd,
scalePtr, ScaleCmdDeletedProc);
scalePtr->optionTable = optionTable;
@@ -374,7 +374,7 @@ static int
ScaleWidgetObjCmd(
ClientData clientData, /* Information about scale widget. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument strings. */
{
TkScale *scalePtr = (TkScale *)clientData;
diff --git a/generic/tkScrollbar.c b/generic/tkScrollbar.c
index 0b09b84..e795910 100644
--- a/generic/tkScrollbar.c
+++ b/generic/tkScrollbar.c
@@ -101,7 +101,7 @@ static int ConfigureScrollbar(Tcl_Interp *interp,
Tcl_Obj *const objv[], int flags);
static void ScrollbarCmdDeletedProc(ClientData clientData);
static int ScrollbarWidgetObjCmd(ClientData clientData,
- Tcl_Interp *, int objc, Tcl_Obj *const objv[]);
+ Tcl_Interp *, TkSizeT objc, Tcl_Obj *const objv[]);
/*
*--------------------------------------------------------------
@@ -155,7 +155,7 @@ Tk_ScrollbarObjCmd(
scrollPtr->tkwin = newWin;
scrollPtr->display = Tk_Display(newWin);
scrollPtr->interp = interp;
- scrollPtr->widgetCmd = Tcl_CreateObjCommand(interp,
+ scrollPtr->widgetCmd = Tcl_CreateObjCommand2(interp,
Tk_PathName(scrollPtr->tkwin), ScrollbarWidgetObjCmd,
scrollPtr, ScrollbarCmdDeletedProc);
scrollPtr->vertical = 0;
@@ -222,7 +222,7 @@ static int
ScrollbarWidgetObjCmd(
ClientData clientData, /* Information about scrollbar widget. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument strings. */
{
TkScrollbar *scrollPtr = (TkScrollbar *)clientData;
diff --git a/generic/tkSquare.c b/generic/tkSquare.c
index c78edc7..c9993b6 100644
--- a/generic/tkSquare.c
+++ b/generic/tkSquare.c
@@ -104,7 +104,7 @@ static void KeepInWindow(Square *squarePtr);
static void SquareObjEventProc(ClientData clientData,
XEvent *eventPtr);
static int SquareWidgetObjCmd(ClientData clientData,
- Tcl_Interp *, int objc, Tcl_Obj * const objv[]);
+ Tcl_Interp *, TkSizeT objc, Tcl_Obj * const objv[]);
/*
*--------------------------------------------------------------
@@ -127,7 +127,7 @@ int
SquareObjCmd(
ClientData dummy, /* NULL. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
Square *squarePtr;
@@ -167,7 +167,7 @@ SquareObjCmd(
squarePtr->tkwin = tkwin;
squarePtr->display = Tk_Display(tkwin);
squarePtr->interp = interp;
- squarePtr->widgetCmd = Tcl_CreateObjCommand(interp,
+ squarePtr->widgetCmd = Tcl_CreateObjCommand2(interp,
Tk_PathName(squarePtr->tkwin), SquareWidgetObjCmd, squarePtr,
SquareDeletedProc);
squarePtr->gc = NULL;
@@ -221,7 +221,7 @@ static int
SquareWidgetObjCmd(
ClientData clientData, /* Information about square widget. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj * const objv[]) /* Argument objects. */
{
Square *squarePtr = (Square *)clientData;
diff --git a/generic/tkTest.c b/generic/tkTest.c
index e566777..5fa4d92 100644
--- a/generic/tkTest.c
+++ b/generic/tkTest.c
@@ -152,65 +152,65 @@ typedef struct TrivialCommandHeader {
*/
static int ImageObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
static int TestbitmapObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
static int TestborderObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
static int TestcolorObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
static int TestcursorObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
static int TestdeleteappsObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
static int TestfontObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[]);
static int TestmakeexistObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[]);
#if !(defined(_WIN32) || defined(MAC_OSX_TK) || defined(__CYGWIN__))
static int TestmenubarObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj *const objv[]);
#endif
#if defined(_WIN32)
static int TestmetricsObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
#endif
static int TestobjconfigObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
static Tk_CustomOptionSetProc CustomOptionSet;
static Tk_CustomOptionGetProc CustomOptionGet;
static Tk_CustomOptionRestoreProc CustomOptionRestore;
static Tk_CustomOptionFreeProc CustomOptionFree;
static int TestpropObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
static int TestprintfObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
#if !(defined(_WIN32) || defined(MAC_OSX_TK) || defined(__CYGWIN__))
static int TestwrapperObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
#endif
static void TrivialCmdDeletedProc(ClientData clientData);
static int TrivialConfigObjCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
static void TrivialEventProc(ClientData clientData,
XEvent *eventPtr);
static int TestPhotoStringMatchCmd(ClientData dummy,
- Tcl_Interp *interp, int objc,
+ Tcl_Interp *interp, TkSizeT objc,
Tcl_Obj * const objv[]);
/*
@@ -251,43 +251,43 @@ Tktest_Init(
return TCL_ERROR;
}
- Tcl_CreateObjCommand(interp, "square", SquareObjCmd, NULL, NULL);
- Tcl_CreateObjCommand(interp, "testbitmap", TestbitmapObjCmd,
+ Tcl_CreateObjCommand2(interp, "square", SquareObjCmd, NULL, NULL);
+ Tcl_CreateObjCommand2(interp, "testbitmap", TestbitmapObjCmd,
Tk_MainWindow(interp), NULL);
- Tcl_CreateObjCommand(interp, "testborder", TestborderObjCmd,
+ Tcl_CreateObjCommand2(interp, "testborder", TestborderObjCmd,
Tk_MainWindow(interp), NULL);
- Tcl_CreateObjCommand(interp, "testcolor", TestcolorObjCmd,
+ Tcl_CreateObjCommand2(interp, "testcolor", TestcolorObjCmd,
Tk_MainWindow(interp), NULL);
- Tcl_CreateObjCommand(interp, "testcursor", TestcursorObjCmd,
+ Tcl_CreateObjCommand2(interp, "testcursor", TestcursorObjCmd,
Tk_MainWindow(interp), NULL);
- Tcl_CreateObjCommand(interp, "testdeleteapps", TestdeleteappsObjCmd,
+ Tcl_CreateObjCommand2(interp, "testdeleteapps", TestdeleteappsObjCmd,
Tk_MainWindow(interp), NULL);
- Tcl_CreateObjCommand(interp, "testembed", TkpTestembedCmd,
+ Tcl_CreateObjCommand2(interp, "testembed", TkpTestembedCmd,
Tk_MainWindow(interp), NULL);
- Tcl_CreateObjCommand(interp, "testobjconfig", TestobjconfigObjCmd,
+ Tcl_CreateObjCommand2(interp, "testobjconfig", TestobjconfigObjCmd,
Tk_MainWindow(interp), NULL);
- Tcl_CreateObjCommand(interp, "testfont", TestfontObjCmd,
+ Tcl_CreateObjCommand2(interp, "testfont", TestfontObjCmd,
Tk_MainWindow(interp), NULL);
- Tcl_CreateObjCommand(interp, "testmakeexist", TestmakeexistObjCmd,
+ Tcl_CreateObjCommand2(interp, "testmakeexist", TestmakeexistObjCmd,
Tk_MainWindow(interp), NULL);
- Tcl_CreateObjCommand(interp, "testprop", TestpropObjCmd,
+ Tcl_CreateObjCommand2(interp, "testprop", TestpropObjCmd,
Tk_MainWindow(interp), NULL);
- Tcl_CreateObjCommand(interp, "testprintf", TestprintfObjCmd, NULL, NULL);
- Tcl_CreateObjCommand(interp, "testtext", TkpTesttextCmd,
+ Tcl_CreateObjCommand2(interp, "testprintf", TestprintfObjCmd, NULL, NULL);
+ Tcl_CreateObjCommand2(interp, "testtext", TkpTesttextCmd,
Tk_MainWindow(interp), NULL);
- Tcl_CreateObjCommand(interp, "testphotostringmatch",
+ Tcl_CreateObjCommand2(interp, "testphotostringmatch",
TestPhotoStringMatchCmd, Tk_MainWindow(interp),
NULL);
#if defined(_WIN32)
- Tcl_CreateObjCommand(interp, "testmetrics", TestmetricsObjCmd,
+ Tcl_CreateObjCommand2(interp, "testmetrics", TestmetricsObjCmd,
Tk_MainWindow(interp), NULL);
#elif !defined(__CYGWIN__) && !defined(MAC_OSX_TK)
- Tcl_CreateObjCommand(interp, "testmenubar", TestmenubarObjCmd,
+ Tcl_CreateObjCommand2(interp, "testmenubar", TestmenubarObjCmd,
Tk_MainWindow(interp), NULL);
- Tcl_CreateObjCommand(interp, "testsend", TkpTestsendCmd,
+ Tcl_CreateObjCommand2(interp, "testsend", TkpTestsendCmd,
Tk_MainWindow(interp), NULL);
- Tcl_CreateObjCommand(interp, "testwrapper", TestwrapperObjCmd,
+ Tcl_CreateObjCommand2(interp, "testwrapper", TestwrapperObjCmd,
Tk_MainWindow(interp), NULL);
#endif /* _WIN32 */
@@ -336,7 +336,7 @@ static int
TestbitmapObjCmd(
TCL_UNUSED(void *), /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
if (objc < 2) {
@@ -369,7 +369,7 @@ static int
TestborderObjCmd(
TCL_UNUSED(void *), /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
if (objc < 2) {
@@ -402,7 +402,7 @@ static int
TestcolorObjCmd(
TCL_UNUSED(void *), /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
if (objc < 2) {
@@ -435,7 +435,7 @@ static int
TestcursorObjCmd(
TCL_UNUSED(void *), /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
if (objc < 2) {
@@ -469,7 +469,7 @@ static int
TestdeleteappsObjCmd(
TCL_UNUSED(void *), /* Main window for application. */
TCL_UNUSED(Tcl_Interp *), /* Current interpreter. */
- TCL_UNUSED(int), /* Number of arguments. */
+ TCL_UNUSED(TkSizeT), /* Number of arguments. */
TCL_UNUSED(Tcl_Obj *const *)) /* Argument strings. */
{
NewApp *nextPtr;
@@ -505,7 +505,7 @@ static int
TestobjconfigObjCmd(
ClientData clientData, /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
static const char *const options[] = {
@@ -681,7 +681,7 @@ TestobjconfigObjCmd(
result = Tk_InitOptions(interp, recordPtr, optionTable,
tkwin);
if (result == TCL_OK) {
- recordPtr->header.widgetCmd = Tcl_CreateObjCommand(interp,
+ recordPtr->header.widgetCmd = Tcl_CreateObjCommand2(interp,
Tcl_GetString(objv[2]), TrivialConfigObjCmd,
recordPtr, TrivialCmdDeletedProc);
Tk_CreateEventHandler(tkwin, StructureNotifyMask,
@@ -729,7 +729,7 @@ TestobjconfigObjCmd(
}
}
if (result == TCL_OK) {
- recordPtr->header.widgetCmd = Tcl_CreateObjCommand(interp,
+ recordPtr->header.widgetCmd = Tcl_CreateObjCommand2(interp,
Tcl_GetString(objv[2]), TrivialConfigObjCmd,
recordPtr, TrivialCmdDeletedProc);
Tk_CreateEventHandler(tkwin, StructureNotifyMask,
@@ -782,7 +782,7 @@ TestobjconfigObjCmd(
}
}
if (result == TCL_OK) {
- recordPtr->header.widgetCmd = Tcl_CreateObjCommand(interp,
+ recordPtr->header.widgetCmd = Tcl_CreateObjCommand2(interp,
Tcl_GetString(objv[2]), TrivialConfigObjCmd,
recordPtr, TrivialCmdDeletedProc);
Tk_CreateEventHandler(tkwin, StructureNotifyMask,
@@ -957,7 +957,7 @@ TestobjconfigObjCmd(
result = Tk_InitOptions(interp, recordPtr, optionTable,
tkwin);
if (result == TCL_OK) {
- recordPtr->header.widgetCmd = Tcl_CreateObjCommand(interp,
+ recordPtr->header.widgetCmd = Tcl_CreateObjCommand2(interp,
Tcl_GetString(objv[2]), TrivialConfigObjCmd,
recordPtr, TrivialCmdDeletedProc);
Tk_CreateEventHandler(tkwin, StructureNotifyMask,
@@ -1022,7 +1022,7 @@ TestobjconfigObjCmd(
recordPtr->header.optionTable, objc - 3, objv + 3,
(Tk_Window) NULL, NULL, NULL);
if (result == TCL_OK) {
- recordPtr->header.widgetCmd = Tcl_CreateObjCommand(interp,
+ recordPtr->header.widgetCmd = Tcl_CreateObjCommand2(interp,
Tcl_GetString(objv[2]), TrivialConfigObjCmd,
recordPtr, TrivialCmdDeletedProc);
} else {
@@ -1100,7 +1100,7 @@ TestobjconfigObjCmd(
recordPtr->header.optionTable, objc - 3, objv + 3,
tkwin, NULL, NULL);
if (result == TCL_OK) {
- recordPtr->header.widgetCmd = Tcl_CreateObjCommand(interp,
+ recordPtr->header.widgetCmd = Tcl_CreateObjCommand2(interp,
Tcl_GetString(objv[2]), TrivialConfigObjCmd,
recordPtr, TrivialCmdDeletedProc);
Tk_CreateEventHandler(tkwin, StructureNotifyMask,
@@ -1142,7 +1142,7 @@ static int
TrivialConfigObjCmd(
ClientData clientData, /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
int result = TCL_OK;
@@ -1324,7 +1324,7 @@ static int
TestfontObjCmd(
ClientData clientData, /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
static const char *const options[] = {"counts", "subfonts", NULL};
@@ -1421,7 +1421,7 @@ ImageCreate(
strcpy(timPtr->imageName, name);
timPtr->varName = (char *)ckalloc(strlen(varName) + 1);
strcpy(timPtr->varName, varName);
- Tcl_CreateObjCommand(interp, name, ImageObjCmd, timPtr, NULL);
+ Tcl_CreateObjCommand2(interp, name, ImageObjCmd, timPtr, NULL);
*clientDataPtr = timPtr;
Tk_ImageChanged(model, 0, 0, 30, 15, 30, 15);
return TCL_OK;
@@ -1448,7 +1448,7 @@ static int
ImageObjCmd(
ClientData clientData, /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument strings. */
{
TImageModel *timPtr = (TImageModel *)clientData;
@@ -1707,11 +1707,11 @@ static int
TestmakeexistObjCmd(
ClientData clientData, /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument strings. */
{
Tk_Window mainWin = (Tk_Window)clientData;
- int i;
+ TkSizeT i;
Tk_Window tkwin;
for (i = 1; i < objc; i++) {
@@ -1748,7 +1748,7 @@ static int
TestmenubarObjCmd(
ClientData clientData, /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument strings. */
{
#ifdef __UNIX__
@@ -1814,7 +1814,7 @@ static int
TestmetricsObjCmd(
TCL_UNUSED(void *), /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument strings. */
{
char buf[TCL_INTEGER_SPACE];
@@ -1861,7 +1861,7 @@ static int
TestpropObjCmd(
ClientData clientData, /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument strings. */
{
Tk_Window mainWin = (Tk_Window)clientData;
@@ -1937,7 +1937,7 @@ static int
TestprintfObjCmd(
ClientData dummy, /* Not used */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument strings. */
{
char buffer[256];
@@ -1989,7 +1989,7 @@ static int
TestwrapperObjCmd(
ClientData clientData, /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument strings. */
{
TkWindow *winPtr, *wrapperPtr;
@@ -2165,7 +2165,7 @@ static int
TestPhotoStringMatchCmd(
ClientData clientData, /* Main window for application. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument strings. */
{
Tcl_Obj *dummy = NULL;
diff --git a/generic/tkText.c b/generic/tkText.c
index 19b313e..339331c 100644
--- a/generic/tkText.c
+++ b/generic/tkText.c
@@ -373,7 +373,7 @@ static int TextEditCmd(TkText *textPtr, Tcl_Interp *interp,
int objc, Tcl_Obj *const objv[]);
static int TextWidgetObjCmd(ClientData clientData,
Tcl_Interp *interp,
- int objc, Tcl_Obj *const objv[]);
+ TkSizeT objc, Tcl_Obj *const objv[]);
static int SharedTextObjCmd(ClientData clientData,
Tcl_Interp *interp,
int objc, Tcl_Obj *const objv[]);
@@ -519,7 +519,7 @@ CreateWidget(
textPtr->tkwin = newWin;
textPtr->display = Tk_Display(newWin);
textPtr->interp = interp;
- textPtr->widgetCmd = Tcl_CreateObjCommand(interp,
+ textPtr->widgetCmd = Tcl_CreateObjCommand2(interp,
Tk_PathName(textPtr->tkwin), TextWidgetObjCmd,
textPtr, TextCmdDeletedProc);
@@ -686,7 +686,7 @@ static int
TextWidgetObjCmd(
ClientData clientData, /* Information about text widget. */
Tcl_Interp *interp, /* Current interpreter. */
- int objc, /* Number of arguments. */
+ TkSizeT objc, /* Number of arguments. */
Tcl_Obj *const objv[]) /* Argument objects. */
{
TkText *textPtr = (TkText *)clientData;
@@ -831,7 +831,8 @@ TextWidgetObjCmd(
break;
case TEXT_COUNT: {
const TkTextIndex *indexFromPtr, *indexToPtr;
- int i, found = 0, update = 0;
+ TkSizeT i;
+ int found = 0, update = 0;
Tcl_Obj *objPtr = NULL;
if (objc < 4) {
@@ -1111,7 +1112,7 @@ TextWidgetObjCmd(
TkTextIndex *indices, *ixStart, *ixEnd, *lastStart;
char *useIdx;
- int i;
+ TkSizeT i;
objc -= 2;
objv += 2;
@@ -1247,7 +1248,8 @@ TextWidgetObjCmd(
break;
case TEXT_GET: {
Tcl_Obj *objPtr = NULL;
- int i, found = 0, visible = 0;
+ TkSizeT i;
+ int found = 0, visible = 0;
const char *name;
TkSizeT length;
@@ -1452,7 +1454,8 @@ TextWidgetObjCmd(
* unnecessarily.
*/
- int deleteInsertOffset, insertLength, j, indexFromLine, indexFromByteOffset;
+ int deleteInsertOffset, insertLength, indexFromLine, indexFromByteOffset;
+ TkSizeT j;
insertLength = 0;
for (j = 4; j < objc; j += 2) {
diff --git a/generic/tkWindow.c b/generic/tkWindow.c
index 2ebdc83..37bdd40 100644
--- a/generic/tkWindow.c
+++ b/generic/tkWindow.c
@@ -947,13 +947,15 @@ TkCreateMainWindow(
}
if ((cmdPtr->flags & SAVEUPDATECMD) &&
Tcl_GetCommandInfo(interp, cmdPtr->name, &cmdInfo) &&
- cmdInfo.isNativeObjectProc && !cmdInfo.objClientData && !cmdInfo.deleteProc) {
+ cmdInfo.isNativeObjectProc && !cmdInfo.deleteProc) {
#if TCL_MAJOR_VERSION > 8
- if (cmdInfo.isNativeObjectProc == 2) {
+ if (cmdInfo.isNativeObjectProc == 2 && !cmdInfo.objClientData2) {
mainPtr->tclUpdateObjProc = cmdInfo.objProc2;
} else
#endif
- mainPtr->tclUpdateObjProc = (Tcl_ObjCmdProc2 *)cmdInfo.objProc;
+ if (!cmdInfo.objClientData) {
+ mainPtr->tclUpdateObjProc = (Tcl_ObjCmdProc2 *)cmdInfo.objProc;
+ }
}
if (cmdPtr->flags & USEINITPROC) {
((TkInitProc *)(void *)cmdPtr->objProc)(interp, clientData);