if (pref)
PR_ASSERT(pref);  if (pref && PREF_HAS_USER_VALUE(pref))
PR_STATIC_CALLBACK(void) pref_FreeEntry(void *pool, PLHashEntry *he, PRUint32 flag){    PrefNode *pref = (PrefNode *) he->value;    if (pref)    {        if (pref->flags & PREF_STRING)        {            PR_FREEIF(pref->defaultPref.stringVal);            PR_FREEIF(pref->userPref.stringVal);        }        PR_Free(he->value);    }    if (flag == HT_FREE_ENTRY)    {        PR_FREEIF(*(void**)&he->key);        PR_Free(he);    }}