summaryrefslogtreecommitdiffstats
path: root/generic/tclBasic.c
diff options
context:
space:
mode:
authormig <mig>2011-04-12 17:34:29 (GMT)
committermig <mig>2011-04-12 17:34:29 (GMT)
commit1a21f252cd4d03104d61e7fc26cdd96c67bb6cf3 (patch)
tree914d0a65655715a331481e5ecbec8569d01d4aeb /generic/tclBasic.c
parent1134bf501b8b6372471e41f014a799541f2533a9 (diff)
downloadtcl-1a21f252cd4d03104d61e7fc26cdd96c67bb6cf3.zip
tcl-1a21f252cd4d03104d61e7fc26cdd96c67bb6cf3.tar.gz
tcl-1a21f252cd4d03104d61e7fc26cdd96c67bb6cf3.tar.bz2
* generic/tclBasic.c: fix for [Bug 2440625], kbk's patch
Diffstat (limited to 'generic/tclBasic.c')
-rw-r--r--generic/tclBasic.c30
1 files changed, 6 insertions, 24 deletions
diff --git a/generic/tclBasic.c b/generic/tclBasic.c
index 5019c86..4c826f3 100644
--- a/generic/tclBasic.c
+++ b/generic/tclBasic.c
@@ -4265,27 +4265,13 @@ TclNREvalObjv(
* a callback to do the actual running.
*/
-#if 0
- {
- Tcl_ObjCmdProc *objProc = cmdPtr->nreProc;
-
- if (!objProc) {
- objProc = cmdPtr->objProc;
- }
-
- TclNRAddCallback(interp, NRRunObjProc, objProc, cmdPtr->objClientData,
- INT2PTR(objc), (ClientData) objv);
- }
- return TCL_OK;
-#else
if (cmdPtr->nreProc) {
- TclNRAddCallback(interp, NRRunObjProc, cmdPtr->nreProc,
- cmdPtr->objClientData, INT2PTR(objc), (ClientData) objv);
+ TclNRAddCallback(interp, NRRunObjProc, cmdPtr,
+ INT2PTR(objc), (ClientData) objv, NULL);
return TCL_OK;
} else {
return cmdPtr->objProc(cmdPtr->objClientData, interp, objc, objv);
}
-#endif
}
void
@@ -4373,15 +4359,11 @@ NRRunObjProc(
{
/* OPT: do not call? */
- Tcl_ObjCmdProc *objProc = (Tcl_ObjCmdProc *)data[0];
- ClientData objClientData = data[1];
- int objc = PTR2INT(data[2]);
- Tcl_Obj **objv = data[3];
+ Command* cmdPtr = data[0];
+ int objc = PTR2INT(data[1]);
+ Tcl_Obj **objv = data[2];
- if (result == TCL_OK) {
- return objProc(objClientData, interp, objc, objv);
- }
- return result;
+ return cmdPtr->nreProc(cmdPtr->objClientData, interp, objc, objv);
}