Contents of /trunk/expect/patches/expect-5.43.0-tcl8.5.6.patch
Parent Directory | Revision Log
Revision 792 -
(show annotations)
(download)
Sun May 10 08:02:28 2009 UTC (15 years, 4 months ago) by niro
File size: 1837 byte(s)
Sun May 10 08:02:28 2009 UTC (15 years, 4 months ago) by niro
File size: 1837 byte(s)
tcl85 fixes
1 | diff -up expect-5.43/exp_command.c_old expect-5.43/exp_command.c |
2 | --- expect-5.43/exp_command.c_old 2009-02-10 16:23:48.000000000 +0100 |
3 | +++ expect-5.43/exp_command.c 2009-02-10 16:31:38.000000000 +0100 |
4 | @@ -2311,12 +2311,11 @@ Tcl_Obj *CONST objv[]; /* Argument objec |
5 | /* Historical note: we used "close" long before there was a */ |
6 | /* Tcl builtin by the same name. */ |
7 | |
8 | - Tcl_CmdInfo info; |
9 | + Tcl_CmdInfo* close_info; |
10 | Tcl_ResetResult(interp); |
11 | - if (0 == Tcl_GetCommandInfo(interp,"close",&info)) { |
12 | - info.clientData = 0; |
13 | - } |
14 | - return(Tcl_CloseObjCmd(info.clientData,interp,objc_orig,objv_orig)); |
15 | + |
16 | + close_info = (Tcl_CmdInfo*) Tcl_GetAssocData (interp, EXP_CMDINFO_CLOSE, NULL); |
17 | + return(close_info->objProc(close_info->objClientData,interp,objc,objv)); |
18 | } |
19 | |
20 | if (chanName) { |
21 | @@ -2961,7 +2960,10 @@ Tcl_Obj *CONST objv[]; |
22 | /* if successful (i.e., TCL_RETURN is returned) */ |
23 | /* modify the result, so that we will handle it specially */ |
24 | |
25 | - int result = Tcl_ReturnObjCmd(clientData,interp,objc,objv); |
26 | + Tcl_CmdInfo* return_info = (Tcl_CmdInfo*) |
27 | + Tcl_GetAssocData (interp, EXP_CMDINFO_RETURN, NULL); |
28 | + |
29 | + int result = return_info->objProc(return_info->objClientData,interp,objc,objv); |
30 | if (result == TCL_RETURN) |
31 | result = EXP_TCL_RETURN; |
32 | return result; |
33 | diff -up expect-5.43/exp_command.h_old expect-5.43/exp_command.h |
34 | --- expect-5.43/exp_command.h_old 2009-02-10 17:33:19.000000000 +0100 |
35 | +++ expect-5.43/exp_command.h 2009-02-10 17:33:46.000000000 +0100 |
36 | @@ -326,3 +326,6 @@ EXTERN ExpState * expDevttyGet _ANSI_ARG |
37 | /* generic functions that really should be provided by Tcl */ |
38 | EXTERN int expSizeGet _ANSI_ARGS_((ExpState *)); |
39 | EXTERN int expSizeZero _ANSI_ARGS_((ExpState *)); |
40 | + |
41 | +#define EXP_CMDINFO_CLOSE "expect/cmdinfo/close" |
42 | +#define EXP_CMDINFO_RETURN "expect/cmdinfo/return" |