diff options
author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2022-11-10 15:21:13 (GMT) |
---|---|---|
committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2022-11-10 15:21:13 (GMT) |
commit | 9dd0e900483a5b0cca9e68966d34dffa814b43e2 (patch) | |
tree | 420e20ad7147c530b3c54b8def57cccdb9b21995 /generic | |
parent | 3b7f710d06680e498bd8d451f6c47cb6c78918f7 (diff) | |
download | tcl-9dd0e900483a5b0cca9e68966d34dffa814b43e2.zip tcl-9dd0e900483a5b0cca9e68966d34dffa814b43e2.tar.gz tcl-9dd0e900483a5b0cca9e68966d34dffa814b43e2.tar.bz2 |
If value is out-of-range (e.g. on 32-bit system >= 2^32-1), Tcl_NewSizeObj() will result in a '-1' object as well
Diffstat (limited to 'generic')
-rw-r--r-- | generic/tclDecls.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/generic/tclDecls.h b/generic/tclDecls.h index d802789..b9d2347 100644 --- a/generic/tclDecls.h +++ b/generic/tclDecls.h @@ -4432,8 +4432,8 @@ extern const TclStubs *tclStubsPtr; #define Tcl_StringMatch(str, pattern) Tcl_StringCaseMatch((str), (pattern), 0) #if TCL_MAJOR_VERSION > 8 -# define Tcl_NewSizeObj(value) (((value) == TCL_INDEX_NONE) ? Tcl_NewWideIntObj(-1) : Tcl_NewWideUIntObj(value)) -# define Tcl_SetSizeObj(objPtr, value) (((value) == TCL_INDEX_NONE) ? Tcl_SetWideIntObj(objPtr, -1) : Tcl_SetWideUIntObj(objPtr, value)) +# define Tcl_NewSizeObj(value) (((value) >= TCL_INDEX_NONE) ? Tcl_NewWideIntObj(-1) : Tcl_NewWideUIntObj(value)) +# define Tcl_SetSizeObj(objPtr, value) (((value) >= TCL_INDEX_NONE) ? Tcl_SetWideIntObj(objPtr, -1) : Tcl_SetWideUIntObj(objPtr, value)) #else # define Tcl_NewSizeObj Tcl_NewIntObj # define Tcl_SetSizeObj Tcl_SetIntObj |