Attachment "1072654.patch" to
ticket [1072654fff]
added by
dgp
2004-11-25 02:05:32.
Index: generic/tclCmdIL.c
===================================================================
RCS file: /cvsroot/tcl/tcl/generic/tclCmdIL.c,v
retrieving revision 1.47.2.4
diff -u -r1.47.2.4 tclCmdIL.c
--- generic/tclCmdIL.c 31 Oct 2004 16:43:30 -0000 1.47.2.4
+++ generic/tclCmdIL.c 24 Nov 2004 19:02:51 -0000
@@ -1991,11 +1991,13 @@
} else if ((nsPtr != globalNsPtr) && !specificNsInPattern) {
entryPtr = Tcl_FindHashEntry(&globalNsPtr->varTable,
simplePattern);
- varPtr = (Var *) Tcl_GetHashValue(entryPtr);
- if (!TclIsVarUndefined(varPtr)
- || (varPtr->flags & VAR_NAMESPACE_VAR)) {
- Tcl_ListObjAppendElement(interp, listPtr,
- Tcl_NewStringObj(simplePattern, -1));
+ if (entryPtr != NULL) {
+ varPtr = (Var *) Tcl_GetHashValue(entryPtr);
+ if (!TclIsVarUndefined(varPtr)
+ || (varPtr->flags & VAR_NAMESPACE_VAR)) {
+ Tcl_ListObjAppendElement(interp, listPtr,
+ Tcl_NewStringObj(simplePattern, -1));
+ }
}
}
} else {
Index: tests/info.test
===================================================================
RCS file: /cvsroot/tcl/tcl/tests/info.test,v
retrieving revision 1.24.2.2
diff -u -r1.24.2.2 info.test
--- tests/info.test 31 Oct 2004 16:43:30 -0000 1.24.2.2
+++ tests/info.test 24 Nov 2004 19:02:51 -0000
@@ -608,6 +608,14 @@
}
t1
} {a}
+test info-19.6 {info vars: Bug 1072654} -setup {
+ namespace eval :: unset -nocomplain foo
+ catch {namespace delete x}
+} -body {
+ namespace eval x info vars foo
+} -cleanup {
+ namespace delete x
+} -result {}
# Check whether the extra testing functions are defined...
if {([catch {expr T1()} msg] == 1) && ($msg == {unknown math function "T1"})} {