summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormig <mig>2011-04-12 17:34:29 (GMT)
committermig <mig>2011-04-12 17:34:29 (GMT)
commit190867f044d99cc38e5383c153da12d862db858c (patch)
tree914d0a65655715a331481e5ecbec8569d01d4aeb
parent4f3ed9e320c3f53f84e98f311934d5060c623ca5 (diff)
downloadtcl-190867f044d99cc38e5383c153da12d862db858c.zip
tcl-190867f044d99cc38e5383c153da12d862db858c.tar.gz
tcl-190867f044d99cc38e5383c153da12d862db858c.tar.bz2
* generic/tclBasic.c: fix for [Bug 2440625], kbk's patch
-rw-r--r--ChangeLog4
-rw-r--r--generic/tclBasic.c30
2 files changed, 10 insertions, 24 deletions
diff --git a/ChangeLog b/ChangeLog
index 2b7012f..c768503 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2011-04-12 Miguel Sofer <msofer@users.sf.net>
+
+ * generic/tclBasic.c: fix for [Bug 2440625], kbk's patch
+
2011-04-11 Miguel Sofer <msofer@users.sf.net>
* generic/tclBasic.c:
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);
}