if (pref && pref->flags & PREF_STRING) {
if (pref && (pref->flags & PREF_STRING)) {
PrefResult pref_CopyCharPref(const char *pref_name, char ** return_buffer, PRBool get_default){	PrefResult result = PREF_ERROR;	char* stringVal;		PrefNode* pref;	if (!gHashTable && !pref_useDefaultPrefFile())		return PREF_NOT_INITIALIZED;	pref = (PrefNode*) PR_HashTableLookup(gHashTable, pref_name);	if (pref && pref->flags & PREF_STRING) {		if (get_default || PREF_IS_LOCKED(pref) || !PREF_HAS_USER_VALUE(pref))			stringVal = pref->defaultPref.stringVal;		else			stringVal = pref->userPref.stringVal;				if (stringVal) {			*return_buffer = PL_strdup(stringVal);			result = PREF_OK;		}	}	return result;}