summaryrefslogtreecommitdiffstats
path: root/generic/tclPreserve.c
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2015-07-02 08:17:50 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2015-07-02 08:17:50 (GMT)
commit4cd9155ae918a63f1c940a9557bf9ab4afd4a333 (patch)
tree9b1ff6ff3db457ec452f61ebcb38c942c259dc7d /generic/tclPreserve.c
parent0918bf8c7b999500650bd3294ab8d257975247bd (diff)
downloadtcl-4cd9155ae918a63f1c940a9557bf9ab4afd4a333.zip
tcl-4cd9155ae918a63f1c940a9557bf9ab4afd4a333.tar.gz
tcl-4cd9155ae918a63f1c940a9557bf9ab4afd4a333.tar.bz2
Another round of refCount consistancy improvements.
Diffstat (limited to 'generic/tclPreserve.c')
-rw-r--r--generic/tclPreserve.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/generic/tclPreserve.c b/generic/tclPreserve.c
index 0bd8f93..0b33d22 100644
--- a/generic/tclPreserve.c
+++ b/generic/tclPreserve.c
@@ -195,7 +195,7 @@ Tcl_Release(
continue;
}
- if (--refPtr->refCount != 0) {
+ if (refPtr->refCount-- > 1) {
Tcl_MutexUnlock(&preserveMutex);
return;
}
@@ -459,8 +459,7 @@ TclHandleRelease(
handlePtr, handlePtr->ptr2, handlePtr->ptr);
}
#endif
- handlePtr->refCount--;
- if ((handlePtr->refCount == 0) && (handlePtr->ptr == NULL)) {
+ if ((handlePtr->refCount-- <= 1) && (handlePtr->ptr == NULL)) {
ckfree(handlePtr);
}
}