summaryrefslogtreecommitdiffstats
path: root/generic/tclObj.c
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2025-04-13 22:16:52 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2025-04-13 22:16:52 (GMT)
commit2b0fe4a3ef75940978059b4b33672f2d1c63dced (patch)
tree4d6908ac453dc6ccba9b0a0593e77af3511609c6 /generic/tclObj.c
parentd46e9784ab0ff5b3e9bf35dc56c903fd9503c936 (diff)
downloadtcl-core-attemptcreatehashentry.zip
tcl-core-attemptcreatehashentry.tar.gz
tcl-core-attemptcreatehashentry.tar.bz2
Implement Tcl_AttemptCreateHashEntry()core-attemptcreatehashentry
Diffstat (limited to 'generic/tclObj.c')
-rw-r--r--generic/tclObj.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/generic/tclObj.c b/generic/tclObj.c
index e086c87..500338b 100644
--- a/generic/tclObj.c
+++ b/generic/tclObj.c
@@ -4184,11 +4184,13 @@ AllocObjEntry(
void *keyPtr) /* Key to store in the hash table entry. */
{
Tcl_Obj *objPtr = (Tcl_Obj *)keyPtr;
- Tcl_HashEntry *hPtr = (Tcl_HashEntry *)Tcl_Alloc(sizeof(Tcl_HashEntry));
+ Tcl_HashEntry *hPtr = (Tcl_HashEntry *)Tcl_AttemptAlloc(sizeof(Tcl_HashEntry));
- hPtr->key.objPtr = objPtr;
- Tcl_IncrRefCount(objPtr);
- hPtr->clientData = NULL;
+ if (hPtr) {
+ hPtr->key.objPtr = objPtr;
+ Tcl_IncrRefCount(objPtr);
+ hPtr->clientData = NULL;
+ }
return hPtr;
}