rem: free(path);
add: wfree(path);
context: getValueForKey(char *domain, char *keyName){    char *path;    proplist_t key;    proplist_t d;    proplist_t val;    key = PLMakeString(keyName);    /* try to find PixmapPath in user defaults */    path = wdefaultspathfordomain(domain);    d = PLGetProplistWithPath(path);    if (!d) {	wwarning("could not open domain file %s", path);    }    free(path);    if (d && !PLIsDictionary(d)) {	PLRelease(d);	d = NULL;    }    if (d) {	val = PLGetDictionaryEntry(d, key);    } else {	val = NULL;    }    /* try to find PixmapPath in global defaults */    if (!val) {	path = globalDefaultsPathForDomain(domain);	if (!path) {	    wwarning("could not locate file for domain %s", domain);	    d = NULL;	} else {	    d = PLGetProplistWithPath(path);	    free(path);	}	if (d && !PLIsDictionary(d)) {	    PLRelease(d);	    d = NULL;	}	if (d) {	    val = PLGetDictionaryEntry(d, key);	    	} else {	    val = NULL;	}    }    if (val)	PLRetain(val);    PLRelease(key);    if (d)	PLRelease(d);    return val;}