diff options
-rw-r--r-- | ChangeLog | 15 | ||||
-rw-r--r-- | generic/tclIORChan.c | 3 | ||||
-rw-r--r-- | generic/tclStringObj.c | 10 |
3 files changed, 23 insertions, 5 deletions
@@ -1,3 +1,18 @@ +2005-09-12 Don Porter <dgp@users.sourceforge.net> + + [kennykb-numerics-branch] Merge updates from HEAD. + + * generic/tclStringObj.c (TclAppendFormattedObjs): Bug fix: + make sure %ld formats force the collection of a wide value, when + the value could be a different long. + +2005-09-09 Andreas Kupries <andreask@activestate.com> + + * generic/tclIORChan.c (RcDecodeEventMask): Added missing type + declaration for the parameter 'mask'. This fixes the [SF Tcl Bug + 1286256]. The other warning can be removed only by removing the + panic/return code. + 2005-09-09 Don Porter <dgp@users.sourceforge.net> [kennykb-numerics-branch] Merge updates from HEAD. diff --git a/generic/tclIORChan.c b/generic/tclIORChan.c index 3e79e5a..09a934e 100644 --- a/generic/tclIORChan.c +++ b/generic/tclIORChan.c @@ -15,7 +15,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclIORChan.c,v 1.1.2.3 2005/09/09 18:48:40 dgp Exp $ + * RCS: @(#) $Id: tclIORChan.c,v 1.1.2.4 2005/09/12 14:47:16 dgp Exp $ */ #include <tclInt.h> @@ -1838,6 +1838,7 @@ RcEncodeEventMask (interp, objName, obj, mask) static Tcl_Obj* RcDecodeEventMask (mask) + int mask; { Tcl_Obj* evObj = Tcl_NewStringObj (((mask & RANDW) == RANDW) ? "read write" : diff --git a/generic/tclStringObj.c b/generic/tclStringObj.c index 11a29af..b55ffeb 100644 --- a/generic/tclStringObj.c +++ b/generic/tclStringObj.c @@ -33,7 +33,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclStringObj.c,v 1.35.2.5 2005/09/09 19:27:15 dgp Exp $ */ + * RCS: @(#) $Id: tclStringObj.c,v 1.35.2.6 2005/09/12 14:47:16 dgp Exp $ */ #include "tclInt.h" @@ -1923,13 +1923,15 @@ TclAppendFormattedObjs(interp, baseObj, format, objc, objv) Tcl_WideInt w; int isNegative = 0; - if (Tcl_GetLongFromObj(NULL, segment, &l) != TCL_OK) { + if (useWide) { + if (Tcl_GetWideIntFromObj(interp, segment, &w) != TCL_OK) { + goto error; + } + } else if (Tcl_GetLongFromObj(NULL, segment, &l) != TCL_OK) { if (Tcl_GetWideIntFromObj(interp, segment, &w) != TCL_OK) { goto error; } l = Tcl_WideAsLong(w); - } else if (useWide) { - w = Tcl_LongAsWide(l); } if (useShort) { |