summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2011-04-19 16:38:15 (GMT)
committerdgp <dgp@users.sourceforge.net>2011-04-19 16:38:15 (GMT)
commitbb5c4230ac4a9acd532eae83581c1c64a2137dd1 (patch)
tree73eb6cc6deea46c3a2c7cc806eecad93e72a7434
parent34bda55e3628476458e63d4495350e14672d01af (diff)
downloadtcl-bb5c4230ac4a9acd532eae83581c1c64a2137dd1.zip
tcl-bb5c4230ac4a9acd532eae83581c1c64a2137dd1.tar.gz
tcl-bb5c4230ac4a9acd532eae83581c1c64a2137dd1.tar.bz2
Reduce internals access in the implementation of [<foo>::pkgconfig list].
-rw-r--r--ChangeLog5
-rw-r--r--generic/tclConfig.c11
2 files changed, 8 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index d55c35e..ddb6690 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2011-04-19 Don Porter <dgp@users.sourceforge.net>
+
+ * generic/tclConfig.c: Reduce internals access in the implementation
+ of [<foo>::pkgconfig list].
+
2011-04-18 Don Porter <dgp@users.sourceforge.net>
* generic/tclCmdIL.c: Use ListRepPtr(.) and other cleanup.
diff --git a/generic/tclConfig.c b/generic/tclConfig.c
index 2ba1bd2..251868e 100644
--- a/generic/tclConfig.c
+++ b/generic/tclConfig.c
@@ -273,18 +273,13 @@ QueryConfigObjCmd(
}
if (n) {
- List *listRepPtr = ListRepPtr(listPtr);
Tcl_DictSearch s;
- Tcl_Obj *key, **vals;
- int done, i = 0;
-
- listRepPtr->elemCount = n;
- vals = &listRepPtr->elements;
+ Tcl_Obj *key;
+ int done;
for (Tcl_DictObjFirst(interp, pkgDict, &s, &key, NULL, &done);
!done; Tcl_DictObjNext(&s, &key, NULL, &done)) {
- vals[i++] = key;
- Tcl_IncrRefCount(key);
+ Tcl_ListObjAppendElement(NULL, listPtr, key);
}
}