diff options
author | Steve Bennett <steveb@workware.net.au> | 2013-12-09 07:28:30 +1000 |
---|---|---|
committer | Steve Bennett <steveb@workware.net.au> | 2013-12-09 08:20:05 +1000 |
commit | dd213d13411bce204850d48669632bc57b242c7c (patch) | |
tree | 8dc14dafde01afe73ca826dff438d40254c927d8 /jim.h | |
parent | 2448a2047e587cae8a1b2f401607b7b4c3108429 (diff) | |
download | jimtcl-dd213d13411bce204850d48669632bc57b242c7c.zip jimtcl-dd213d13411bce204850d48669632bc57b242c7c.tar.gz jimtcl-dd213d13411bce204850d48669632bc57b242c7c.tar.bz2 |
Fix aio close from non-global namespace
aio [open], as well as similar commands return the name of the
created command. If this is done in the non-global namespace, the
returned name is implicitly scoped to the current namespace while
the actual command is created in the global namespace. Thus [close]
does not work when invoked in that namespace.
The solution is to return a fully qualified name, such as ::aio.handle3
Note that this may also be a problem for similar command such as
[proc] and [alias] that return command names.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
Diffstat (limited to 'jim.h')
-rw-r--r-- | jim.h | 5 |
1 files changed, 2 insertions, 3 deletions
@@ -760,9 +760,8 @@ JIM_EXPORT int Jim_SetVariableStrWithStr (Jim_Interp *interp, JIM_EXPORT int Jim_SetVariableLink (Jim_Interp *interp, Jim_Obj *nameObjPtr, Jim_Obj *targetNameObjPtr, Jim_CallFrame *targetCallFrame); -JIM_EXPORT int Jim_CreateNamespaceVariable(Jim_Interp *interp, - Jim_Obj *varNameObj, Jim_Obj *targetNameObj); -JIM_EXPORT int Jim_DiscardNamespaceVars(Jim_Interp *interp); +JIM_EXPORT Jim_Obj * Jim_MakeGlobalNamespaceName(Jim_Interp *interp, + Jim_Obj *nameObjPtr); JIM_EXPORT Jim_Obj * Jim_GetVariable (Jim_Interp *interp, Jim_Obj *nameObjPtr, int flags); JIM_EXPORT Jim_Obj * Jim_GetGlobalVariable (Jim_Interp *interp, |