Index: generic/nsfEnumerationType.c =================================================================== diff -u -N -r7243f88cec779c0274f22e569790c7ad1216800f -r843e576364a54a491861bad94df4cbf31f878ab3 --- generic/nsfEnumerationType.c (.../nsfEnumerationType.c) (revision 7243f88cec779c0274f22e569790c7ad1216800f) +++ generic/nsfEnumerationType.c (.../nsfEnumerationType.c) (revision 843e576364a54a491861bad94df4cbf31f878ab3) @@ -74,6 +74,36 @@ /* *---------------------------------------------------------------------- + * Nsf_EnumerationTypeRelease -- + * + * Release and, eventually, delete the hash table for enumeration-type + * converters. + * + * Results: + * None. + * + * Side effects: + * None. + * + *---------------------------------------------------------------------- + */ +void +Nsf_EnumerationTypeRelease(Tcl_Interp *interp) { + + nonnull_assert(interp != NULL); + + NsfMutexLock(&enumerationMutex); + + if (enumerationTypeRefCount-- < 1) { + Tcl_DeleteHashTable(enumerationHashTablePtr); + } + + NsfMutexUnlock(&enumerationMutex); +} + + +/* + *---------------------------------------------------------------------- * Nsf_EnumerationTypeRegister -- * * Registers an array of enumeration types upon NSF initialization.