diff options
| author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2018-02-22 20:09:33 (GMT) |
|---|---|---|
| committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2018-02-22 20:09:33 (GMT) |
| commit | f5bf130f05e3dcf636ef831f017d5672c594660a (patch) | |
| tree | 7c04995cab36d1d34a587fabe207fa5018b31ccd | |
| parent | 701d9dbe89519d8d52b18d0e20140395e8a13682 (diff) | |
| parent | 812174d5782d57e4dbe97e9a1e378a2a2a4eac1f (diff) | |
| download | tcl-f5bf130f05e3dcf636ef831f017d5672c594660a.zip tcl-f5bf130f05e3dcf636ef831f017d5672c594660a.tar.gz tcl-f5bf130f05e3dcf636ef831f017d5672c594660a.tar.bz2 | |
merge core-8-branch
| -rw-r--r-- | generic/tclGet.c | 2 | ||||
| -rw-r--r-- | generic/tclObj.c | 5 | ||||
| -rw-r--r-- | generic/tclTest.c | 6 | ||||
| -rw-r--r-- | generic/tclThreadTest.c | 4 |
4 files changed, 8 insertions, 9 deletions
diff --git a/generic/tclGet.c b/generic/tclGet.c index 2d611fa..4811c42 100644 --- a/generic/tclGet.c +++ b/generic/tclGet.c @@ -142,7 +142,7 @@ Tcl_GetBoolean( Tcl_Panic("invalid sharing of Tcl_Obj on C stack"); } if (code == TCL_OK) { - *boolPtr = (int)obj.internalRep.wideValue; + *boolPtr = obj.internalRep.wideValue != 0; } return code; } diff --git a/generic/tclObj.c b/generic/tclObj.c index 647a777..3826bc0 100644 --- a/generic/tclObj.c +++ b/generic/tclObj.c @@ -1765,7 +1765,7 @@ Tcl_GetBooleanFromObj( * * Side effects: * If no error occurs, an integer 1 or 0 is stored as "objPtr"s internal - * representation and the type of "objPtr" is set to boolean. + * representation and the type of "objPtr" is set to boolean or int. * *---------------------------------------------------------------------- */ @@ -1783,8 +1783,7 @@ TclSetBooleanFromAny( if (objPtr->bytes == NULL) { if (objPtr->typePtr == &tclIntType) { - switch (objPtr->internalRep.wideValue) { - case 0L: case 1L: + if ((Tcl_WideUInt)objPtr->internalRep.wideValue < 2) { return TCL_OK; } goto badBoolean; diff --git a/generic/tclTest.c b/generic/tclTest.c index fa1d9f4..2efffcf 100644 --- a/generic/tclTest.c +++ b/generic/tclTest.c @@ -5203,7 +5203,7 @@ TestmainthreadCmd( const char **argv) /* Argument strings. */ { if (argc == 1) { - Tcl_Obj *idObj = Tcl_NewLongObj((long)(size_t)Tcl_GetCurrentThread()); + Tcl_Obj *idObj = Tcl_NewWideIntObj((Tcl_WideInt)(size_t)Tcl_GetCurrentThread()); Tcl_SetObjResult(interp, idObj); return TCL_OK; @@ -5600,8 +5600,8 @@ TestChannelCmd( return TCL_ERROR; } - TclFormatInt(buf, (size_t) Tcl_GetChannelThread(chan)); - Tcl_AppendResult(interp, buf, NULL); + Tcl_SetObjResult(interp, Tcl_NewWideIntObj( + (Tcl_WideInt) (size_t) Tcl_GetChannelThread(chan))); return TCL_OK; } diff --git a/generic/tclThreadTest.c b/generic/tclThreadTest.c index 9c5fecb..a008799 100644 --- a/generic/tclThreadTest.c +++ b/generic/tclThreadTest.c @@ -248,7 +248,7 @@ ThreadObjCmd( switch ((enum options)option) { case THREAD_CANCEL: { - long id; + Tcl_WideInt id; const char *result; int flags, arg; @@ -264,7 +264,7 @@ ThreadObjCmd( arg++; } } - if (Tcl_GetLongFromObj(interp, objv[arg], &id) != TCL_OK) { + if (Tcl_GetWideIntFromObj(interp, objv[arg], &id) != TCL_OK) { return TCL_ERROR; } arg++; |
