rem: eclass = wmalloc(l*2);
add: eclass = wmalloc(l*2+1);
context: EscapeWM_CLASS(char *name, char *class){    char *ret;    char *ename = NULL, *eclass = NULL;    int i, j, l;    if (!name && !class)	return NULL;    if (name) {	l = strlen(name);	ename = wmalloc(l*2);	j = 0;	for (i=0; i<l; i++) {	    if (name[i]=='\\') {		ename[j++] = '\\';	    } else if (name[i]=='.') {		ename[j++] = '\\';	    }	    ename[j++] = name[i];	}	ename[j] = 0;    }    if (class) {	l = strlen(class);	eclass = wmalloc(l*2);	j = 0;	for (i=0; i<l; i++) {	    if (class[i]=='\\') {		eclass[j++] = '\\';	    } else if (class[i]=='.') {		eclass[j++] = '\\';	    }	    eclass[j++] = class[i];	}	eclass[j] = 0;    }    if (ename && eclass) {	ret = wmalloc(strlen(ename)+strlen(eclass)+4);	sprintf(ret, "%s.%s", ename, eclass);	wfree(ename);	wfree(eclass);    } else if (ename) {	ret = wstrdup(ename);	wfree(ename);    } else {	ret = wstrdup(eclass);	wfree(eclass);    }    return ret;}