diff options
Diffstat (limited to 'generic')
-rw-r--r-- | generic/tclListObj.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/generic/tclListObj.c b/generic/tclListObj.c index 036d624..3b9dce6 100644 --- a/generic/tclListObj.c +++ b/generic/tclListObj.c @@ -1623,16 +1623,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((char *) listRepPtr); } |