summaryrefslogtreecommitdiffstats
path: root/generic
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2011-06-21 17:04:06 (GMT)
committerdgp <dgp@users.sourceforge.net>2011-06-21 17:04:06 (GMT)
commitc7900c10851d47a90a6107dfb79c9aa77f3655d2 (patch)
treec3993f95dfb68352d9e8e149f99267c8f0cc8151 /generic
parent22ca5ec523a49ed377e9b660296b6fada9584cec (diff)
parent97a44d320d35cebb0ed167cd420005f24a5c4dff (diff)
downloadtcl-c7900c10851d47a90a6107dfb79c9aa77f3655d2.zip
tcl-c7900c10851d47a90a6107dfb79c9aa77f3655d2.tar.gz
tcl-c7900c10851d47a90a6107dfb79c9aa77f3655d2.tar.bz2
merge to RC
Diffstat (limited to 'generic')
-rw-r--r--generic/tclLink.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/generic/tclLink.c b/generic/tclLink.c
index df8b16a..f7911a4 100644
--- a/generic/tclLink.c
+++ b/generic/tclLink.c
@@ -112,6 +112,14 @@ Tcl_LinkVar(
Link *linkPtr;
int code;
+ linkPtr = (Link *) Tcl_VarTraceInfo(interp, varName, TCL_GLOBAL_ONLY,
+ LinkTraceProc, (ClientData) NULL);
+ if (linkPtr != NULL) {
+ Tcl_SetObjResult(interp, Tcl_ObjPrintf(
+ "variable '%s' is already linked", varName));
+ return TCL_ERROR;
+ }
+
linkPtr = (Link *) ckalloc(sizeof(Link));
linkPtr->interp = interp;
linkPtr->varName = Tcl_NewStringObj(varName, -1);