summaryrefslogtreecommitdiffstats
path: root/generic/tclPreserve.c
diff options
context:
space:
mode:
authornijtmans@users.sourceforge.net <jan.nijtmans>2015-07-02 08:17:50 (GMT)
committernijtmans@users.sourceforge.net <jan.nijtmans>2015-07-02 08:17:50 (GMT)
commitc987de9d2fba29077b6c843a80e7a8d1d83df08c (patch)
tree9b1ff6ff3db457ec452f61ebcb38c942c259dc7d /generic/tclPreserve.c
parentb185ee724b895e0a541f78285a13be727e4176c0 (diff)
downloadtcl-c987de9d2fba29077b6c843a80e7a8d1d83df08c.zip
tcl-c987de9d2fba29077b6c843a80e7a8d1d83df08c.tar.gz
tcl-c987de9d2fba29077b6c843a80e7a8d1d83df08c.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);
}
}