summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--generic/tclBinary.c6
2 files changed, 9 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 9db7bd5..7e3bc8f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2003-12-17 Daniel Steffen <das@users.sourceforge.net>
+
+ * generic/tclBinary.c (DeleteScanNumberCache): fixed crashing bug
+ when numeric scan-value cache contains NULL value.
+
2003-12-17 Vince Darley <vincentdarley@users.sourceforge.net>
* generic/tclCmdAH.c:
diff --git a/generic/tclBinary.c b/generic/tclBinary.c
index dcac12f..048dc1e 100644
--- a/generic/tclBinary.c
+++ b/generic/tclBinary.c
@@ -10,7 +10,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclBinary.c,v 1.14 2003/12/02 09:29:54 dkf Exp $
+ * RCS: @(#) $Id: tclBinary.c,v 1.15 2003/12/17 18:40:07 das Exp $
*/
#include "tclInt.h"
@@ -1736,7 +1736,9 @@ DeleteScanNumberCache(numberCachePtr)
while (hEntry != NULL) {
register Tcl_Obj *value = (Tcl_Obj *) Tcl_GetHashValue(hEntry);
- Tcl_DecrRefCount(value);
+ if (value != NULL) {
+ Tcl_DecrRefCount(value);
+ }
hEntry = Tcl_NextHashEntry(&search);
}
Tcl_DeleteHashTable(numberCachePtr);