8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
* Copyright (c) 1994-1998 Sun Microsystems, Inc.
* Copyright (c) 2004-2006 Miguel Sofer
* Copyright (c) 2007 Daniel A. Steffen <das@users.sourceforge.net>
*
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
* RCS: @(#) $Id: tclProc.c,v 1.46.2.50 2008/10/17 20:52:24 dgp Exp $
*/
#include "tclInt.h"
#include "tclCompile.h"
#include "tclOOInt.h"
/*
|
|
|
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
* Copyright (c) 1994-1998 Sun Microsystems, Inc.
* Copyright (c) 2004-2006 Miguel Sofer
* Copyright (c) 2007 Daniel A. Steffen <das@users.sourceforge.net>
*
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
* RCS: @(#) $Id: tclProc.c,v 1.46.2.51 2008/10/23 15:51:10 dgp Exp $
*/
#include "tclInt.h"
#include "tclCompile.h"
#include "tclOOInt.h"
/*
|
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
|
iPtr->returnLevel--;
if (iPtr->returnLevel < 0) {
Tcl_Panic("TclUpdateReturnInfo: negative return level");
}
if (iPtr->returnLevel == 0) {
/*
* Now we've reached the level to return the requested -code.
*/
code = iPtr->returnCode;
if (code == TCL_ERROR) {
iPtr->flags |= ERR_LEGACY_COPY;
}
}
return code;
}
|
>
>
>
>
>
|
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
|
iPtr->returnLevel--;
if (iPtr->returnLevel < 0) {
Tcl_Panic("TclUpdateReturnInfo: negative return level");
}
if (iPtr->returnLevel == 0) {
/*
* Now we've reached the level to return the requested -code.
* Since iPtr->returnLevel and iPtr->returnCode have completed
* their task, we now reset them to default values so that any
* bare "return TCL_RETURN" that may follow will work [Bug 2152286].
*/
code = iPtr->returnCode;
iPtr->returnLevel = 1;
iPtr->returnCode = TCL_OK;
if (code == TCL_ERROR) {
iPtr->flags |= ERR_LEGACY_COPY;
}
}
return code;
}
|