summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--generic/tclListObj.c12
2 files changed, 9 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 454bf32..f058413 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2011-04-27 Don Porter <dgp@users.sourceforge.net>
+
+ * generic/tclListObj.c: FreeListInternalRep() cleanup.
+
2011-04-21 Don Porter <dgp@users.sourceforge.net>
* generic/tclInt.h: Use macro to set List intreps.
diff --git a/generic/tclListObj.c b/generic/tclListObj.c
index 7955e19..7d0743d 100644
--- a/generic/tclListObj.c
+++ b/generic/tclListObj.c
@@ -1647,16 +1647,14 @@ static void
FreeListInternalRep(
Tcl_Obj *listPtr) /* List object with internal rep to free. */
{
- register List *listRepPtr = ListRepPtr(listPtr);
- register Tcl_Obj **elemPtrs = &listRepPtr->elements;
- register Tcl_Obj *objPtr;
- int numElems = listRepPtr->elemCount;
- int i;
+ List *listRepPtr = ListRepPtr(listPtr);
if (--listRepPtr->refCount <= 0) {
+ Tcl_Obj **elemPtrs = &listRepPtr->elements;
+ int i, numElems = listRepPtr->elemCount;
+
for (i = 0; i < numElems; i++) {
- objPtr = elemPtrs[i];
- Tcl_DecrRefCount(objPtr);
+ Tcl_DecrRefCount(elemPtrs[i]);
}
ckfree(listRepPtr);
}