Subject: restore old refcounts in TCL_ERROR case.

From: "jan.nijtmans" <[email-masked]>
Date: Thu, 27 Dec 2012 20:54:31 +0000

---
 generic/tclListObj.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/generic/tclListObj.c b/generic/tclListObj.c
index 1166759..97e7152 100644
--- a/generic/tclListObj.c
+++ b/generic/tclListObj.c
@@ -906,6 +906,9 @@ Tcl_ListObjReplace(
 
 	listRepPtr = AttemptNewList(interp, newMax, NULL);
 	if (listRepPtr == NULL) {
+	    for (i = 0;  i < objc;  i++) {
+		objv[i]->refCount--;
+	    }
 	    return TCL_ERROR;
 	}
 
-- 
cgit v0.12