diff options
-rw-r--r-- | doc/SetClassProcs.3 | 2 | ||||
-rw-r--r-- | generic/tk.h | 4 | ||||
-rw-r--r-- | generic/tkPanedWindow.c | 15 | ||||
-rw-r--r-- | generic/ttk/ttkTheme.c | 4 | ||||
-rw-r--r-- | generic/ttk/ttkThemeInt.h | 4 | ||||
-rw-r--r-- | generic/ttk/ttkWidget.c | 2 | ||||
-rw-r--r-- | unix/tkUnixWm.c | 2 |
7 files changed, 19 insertions, 14 deletions
diff --git a/doc/SetClassProcs.3 b/doc/SetClassProcs.3 index a2af479..832b269 100644 --- a/doc/SetClassProcs.3 +++ b/doc/SetClassProcs.3 @@ -33,7 +33,7 @@ are used as callbacks in different places. The structure pointed to by \fIprocs\fR contains the following: .CS typedef struct Tk_ClassProcs { - unsigned int \fIsize\fR; + size_t \fIsize\fR; Tk_ClassWorldChangedProc *\fIworldChangedProc\fR; Tk_ClassCreateProc *\fIcreateProc\fR; Tk_ClassModalProc *\fImodalProc\fR; diff --git a/generic/tk.h b/generic/tk.h index e7c4c78..094c1d5 100644 --- a/generic/tk.h +++ b/generic/tk.h @@ -592,7 +592,11 @@ typedef void (Tk_ClassWorldChangedProc) (ClientData instanceData); typedef void (Tk_ClassModalProc) (Tk_Window tkwin, XEvent *eventPtr); typedef struct Tk_ClassProcs { +#if TCL_MAJOR_VERSION > 8 + size_t size; +#else unsigned int size; +#endif Tk_ClassWorldChangedProc *worldChangedProc; /* Procedure to invoke when the widget needs * to respond in some way to a change in the diff --git a/generic/tkPanedWindow.c b/generic/tkPanedWindow.c index 456c8e0..549242e 100644 --- a/generic/tkPanedWindow.c +++ b/generic/tkPanedWindow.c @@ -236,7 +236,7 @@ static void AdjustForSticky(int sticky, int cavityWidth, int *slaveWidthPtr, int *slaveHeightPtr); static void MoveSash(PanedWindow *pwPtr, int sash, int diff); static int ObjectIsEmpty(Tcl_Obj *objPtr); -static char * ComputeSlotAddress(char *recordPtr, int offset); +static void * ComputeSlotAddress(void *recordPtr, size_t offset); static int PanedWindowIdentifyCoords(PanedWindow *pwPtr, Tcl_Interp *interp, int x, int y); @@ -2400,7 +2400,7 @@ GetSticky( int internalOffset) /* Offset within *recordPtr containing the * sticky value. */ { - int sticky = *(int *)(recordPtr + internalOffset); + int sticky = *(int *)((char *)recordPtr + internalOffset); char buffer[5]; char *p = &buffer[0]; @@ -2455,7 +2455,8 @@ SetSticky( int flags) /* Flags for the option, set Tk_SetOptions. */ { int sticky = 0; - char c, *internalPtr; + char c; + void *internalPtr; const char *string; internalPtr = ComputeSlotAddress(recordPtr, internalOffset); @@ -3019,12 +3020,12 @@ ObjectIsEmpty( *---------------------------------------------------------------------- */ -static char * +static void * ComputeSlotAddress( - char *recordPtr, /* Pointer to the start of a record. */ - int offset) /* Offset of a slot within that record; may be < 0. */ + void *recordPtr, /* Pointer to the start of a record. */ + size_t offset) /* Offset of a slot within that record; may be -1. */ { - if (offset >= 0) { + if (offset != (size_t)-1) { return recordPtr + offset; } else { return NULL; diff --git a/generic/ttk/ttkTheme.c b/generic/ttk/ttkTheme.c index 595effd..2ab6304 100644 --- a/generic/ttk/ttkTheme.c +++ b/generic/ttk/ttkTheme.c @@ -1064,7 +1064,7 @@ void Ttk_ElementSize( Ttk_ElementClass *eclass, /* Element to query */ Ttk_Style style, /* Style settings */ - char *recordPtr, /* The widget record. */ + void *recordPtr, /* The widget record. */ Tk_OptionTable optionTable, /* Description of widget record */ Tk_Window tkwin, /* The widget window. */ Ttk_State state, /* Current widget state */ @@ -1094,7 +1094,7 @@ void Ttk_DrawElement( Ttk_ElementClass *eclass, /* Element instance */ Ttk_Style style, /* Style settings */ - char *recordPtr, /* The widget record. */ + void *recordPtr, /* The widget record. */ Tk_OptionTable optionTable, /* Description of option table */ Tk_Window tkwin, /* The widget window. */ Drawable d, /* Where to draw element. */ diff --git a/generic/ttk/ttkThemeInt.h b/generic/ttk/ttkThemeInt.h index 3aaada8..25a5fdf 100644 --- a/generic/ttk/ttkThemeInt.h +++ b/generic/ttk/ttkThemeInt.h @@ -15,11 +15,11 @@ MODULE_SCOPE Ttk_ElementClass *Ttk_GetElement(Ttk_Theme, const char *name); MODULE_SCOPE const char *Ttk_ElementClassName(Ttk_ElementClass *); MODULE_SCOPE void Ttk_ElementSize( - Ttk_ElementClass *, Ttk_Style, char *recordPtr, Tk_OptionTable, + Ttk_ElementClass *, Ttk_Style, void *recordPtr, Tk_OptionTable, Tk_Window tkwin, Ttk_State state, int *widthPtr, int *heightPtr, Ttk_Padding*); MODULE_SCOPE void Ttk_DrawElement( - Ttk_ElementClass *, Ttk_Style, char *recordPtr, Tk_OptionTable, + Ttk_ElementClass *, Ttk_Style, void *recordPtr, Tk_OptionTable, Tk_Window tkwin, Drawable d, Ttk_Box b, Ttk_State state); MODULE_SCOPE Tcl_Obj *Ttk_QueryStyle( diff --git a/generic/ttk/ttkWidget.c b/generic/ttk/ttkWidget.c index c2f8d60..1cae8fb 100644 --- a/generic/ttk/ttkWidget.c +++ b/generic/ttk/ttkWidget.c @@ -334,7 +334,7 @@ static void WidgetWorldChanged(ClientData clientData) TtkRedisplayWidget(corePtr); } -static Tk_ClassProcs widgetClassProcs = { +static const Tk_ClassProcs widgetClassProcs = { sizeof(Tk_ClassProcs), /* size */ WidgetWorldChanged, /* worldChangedProc */ NULL, /* createProc */ diff --git a/unix/tkUnixWm.c b/unix/tkUnixWm.c index 861f225..16914c4 100644 --- a/unix/tkUnixWm.c +++ b/unix/tkUnixWm.c @@ -36,7 +36,7 @@ typedef struct ProtocolHandler { } ProtocolHandler; #define HANDLER_SIZE(cmdLength) \ - ((offsetof(ProtocolHandler, command) + 1 + cmdLength)) + (offsetof(ProtocolHandler, command) + 1 + cmdLength) /* * Data for [wm attributes] command: |