Diff
Not logged in

Differences From Artifact [05aa32fec0]:

To Artifact [abaf724bbe]:


8
9
10
11
12
13
14
15

16
17
18
19
20
21
22
8
9
10
11
12
13
14

15
16
17
18
19
20
21
22







-
+







 * Copyright 1991-1995 Karl Lehenbauer and Mark Diekhans.
 * Copyright (c) 1995 Sun Microsystems, Inc.
 * Copyright (c) 2004 by Kevin B. Kenny.  All rights reserved.
 *
 * See the file "license.terms" for information on usage and redistribution of
 * this file, and for a DISCLAIMER OF ALL WARRANTIES.
 *
 * RCS: @(#) $Id: tclClock.c,v 1.61.2.2 2008/03/07 22:05:02 dgp Exp $
 * RCS: @(#) $Id: tclClock.c,v 1.61.2.3 2008/06/25 15:56:09 dgp Exp $
 */

#include "tclInt.h"

/*
 * Windows has mktime. The configurators do not check.
 */
329
330
331
332
333
334
335
336
337
338
339
340
341













342
343
344
345
346
347
348
329
330
331
332
333
334
335






336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355







-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+







     */

    if (objc != 4) {
	Tcl_WrongNumArgs(interp, 1, objv, "dict tzdata changeover");
	return TCL_ERROR;
    }
    dict = objv[1];
    if ((Tcl_DictObjGet(interp, dict, literals[LIT_LOCALSECONDS],
		&secondsObj) != TCL_OK)
	    || (Tcl_GetWideIntFromObj(interp, secondsObj,
		&(fields.localSeconds)) != TCL_OK)
	    || (TclGetIntFromObj(interp, objv[3], &changeover) != TCL_OK)
	    || ConvertLocalToUTC(interp, &fields, objv[2], changeover)) {
    if (Tcl_DictObjGet(interp, dict, literals[LIT_LOCALSECONDS],
		       &secondsObj)!= TCL_OK) {
	return TCL_ERROR;
    }
    if (secondsObj == NULL) {
	Tcl_SetObjResult(interp, Tcl_NewStringObj("key \"localseconds\" not "
						  "found in dictionary", -1));
	return TCL_ERROR;
    }
    if ((Tcl_GetWideIntFromObj(interp, secondsObj,
			      &(fields.localSeconds)) != TCL_OK)
	|| (TclGetIntFromObj(interp, objv[3], &changeover) != TCL_OK)
	|| ConvertLocalToUTC(interp, &fields, objv[2], changeover)) {
	return TCL_ERROR;
    }

    /*
     * Copy-on-write; set the 'seconds' field in the dictionary and place the
     * modified dictionary in the interpreter result.
     */