rem: free(apath);
add: wfree(apath);
context: listPixmaps(WScreen *scr, WMList *lPtr, char *path){    struct dirent *dentry;    DIR *dir;    char pbuf[PATH_MAX+16];    char *apath;    IconPanel *panel = WMGetHangedData(lPtr);    panel->preview = False;        apath = wexpandpath(path);    dir = opendir(apath);        if (!dir) {	char *msg;	char *tmp;	tmp = _("Could not open directory ");	msg = wmalloc(strlen(tmp)+strlen(path)+6);	strcpy(msg, tmp);	strcat(msg, path);		wMessageDialog(scr, _("Error"), msg, _("OK"), NULL, NULL);	free(msg);	free(apath);	return;    }    /* list contents in the column */    while ((dentry = readdir(dir))) {	struct stat statb;		if (strcmp(dentry->d_name, ".")==0 ||	    strcmp(dentry->d_name, "..")==0)	    continue;	strcpy(pbuf, apath);	strcat(pbuf, "/");	strcat(pbuf, dentry->d_name);		if (stat(pbuf, &statb)<0)	    continue;		if (statb.st_mode & (S_IRUSR|S_IRGRP|S_IROTH)	    && statb.st_mode & (S_IFREG|S_IFLNK)) {	    WMAddListItem(lPtr, dentry->d_name);	}    }    WMSortListItems(lPtr);    closedir(dir);    free(apath);    panel->preview = True;}