Attachment "707104.patch" to
ticket [707104ffff]
added by
dgp
2004-09-11 03:50:59.
Index: generic/tclInterp.c
===================================================================
RCS file: /cvsroot/tcl/tcl/generic/tclInterp.c,v
retrieving revision 1.44
diff -u -r1.44 tclInterp.c
--- generic/tclInterp.c 18 Aug 2004 19:59:00 -0000 1.44
+++ generic/tclInterp.c 10 Sep 2004 20:42:54 -0000
@@ -1463,17 +1463,20 @@
slavePtr = &((InterpInfo *) ((Interp *) slaveInterp)->interpInfo)->slave;
while (1) {
- Alias *oldAliasPtr;
+ Tcl_Obj *newToken;
char *string;
- string = Tcl_GetString(namePtr);
+ string = Tcl_GetString(aliasPtr->namePtr);
hPtr = Tcl_CreateHashEntry(&slavePtr->aliasTable, string, &new);
if (new != 0) {
break;
}
- oldAliasPtr = (Alias *) Tcl_GetHashValue(hPtr);
- Tcl_DeleteCommandFromToken(slaveInterp, oldAliasPtr->slaveCmd);
+ newToken = Tcl_NewStringObj("::",-1);
+ Tcl_AppendObjToObj(newToken, aliasPtr->namePtr);
+ Tcl_DecrRefCount(aliasPtr->namePtr);
+ aliasPtr->namePtr = newToken;
+ Tcl_IncrRefCount(aliasPtr->namePtr);
}
aliasPtr->aliasEntryPtr = hPtr;
@@ -1504,7 +1507,7 @@
Tcl_SetHashValue(hPtr, (ClientData) targetPtr);
aliasPtr->targetEntryPtr = hPtr;
- Tcl_SetObjResult(interp, namePtr);
+ Tcl_SetObjResult(interp, aliasPtr->namePtr);
Tcl_Release(slaveInterp);
Tcl_Release(masterInterp);