rem: if (!str) str = "left"; i = getbutton(str); if (i==-1) {
add: if (str) { i = getbutton(str); if (i==-1) { a = 1; wwarning(_("bad value %s for option %s"),str, "SelectWindowsMouseButton"); } else if (i>=0) { a = i; } } else {
context: showData(_Panel *panel){    char *str;    int i;    int a=-1, b=-1, c=-1;    float accel;    char buffer[32];    Display *dpy = WMScreenDisplay(WMWidgetScreen(panel->win));    str = GetStringForKey("SelectWindowsMouseButton");    if (!str)	str = "left";    i = getbutton(str);    if (i==-1) {	a = 0;	wwarning(_("bad value %s for option %s"),str, "SelectWindowsMouseButton");	WMPerformButtonClick(panel->smb[0]);    } else if (i>=0) {	a = i;	WMPerformButtonClick(panel->smb[i]);    }         str = GetStringForKey("WindowListMouseButton");    if (!str)	str = "middle";    i = getbutton(str);    if (i==-1) {	b = 0;	wwarning(_("bad value %s for option %s"), str, "WindowListMouseButton");	WMPerformButtonClick(panel->lmb[1]);    } else if (i>=0) {	b = i;	WMPerformButtonClick(panel->lmb[i]);    }         str = GetStringForKey("ApplicationMenuMouseButton");    if (!str)	str = "right";    i = getbutton(str);    if (i==-1) {	c = 0;	wwarning(_("bad value %s for option %s"), str, "ApplicationMenuMouseButton");	WMPerformButtonClick(panel->amb[2]);    } else if (i>=0) {	c = i;	WMPerformButtonClick(panel->amb[i]);    }            WMSetButtonSelected(panel->disaB, GetBoolForKey("DisableWSMouseActions"));        /**/    getMouseParameters(dpy, &accel, &a);    panel->maxThreshold = WidthOfScreen(DefaultScreenOfDisplay(dpy));    if (a > panel->maxThreshold) {	panel->maxThreshold = a;    }    sprintf(buffer, "%i", a);    WMSetTextFieldText(panel->threT, buffer);    WMSetSliderValue(panel->speedS, (accel - 0.25)/0.25);    panel->acceleration = accel;    sprintf(buffer, "%.2f", accel);    WMSetTextFieldText(panel->acceT, buffer);    /**/    b = GetIntegerForKey("DoubleClickTime");    /* find best match */    a = -1;    for (i=0; i<5; i++) {	if (DELAY(i) == b)	    a = i;    }    if (a >= 0)	WMPerformButtonClick(panel->ddelaB[a]);    sprintf(buffer, "%i", b);    WMSetTextFieldText(panel->ddelaT, buffer);    /**/    str = GetStringForKey("ModifierKey");    if (!str)	str = "mod1";    a = ModifierFromKey(dpy, str);    if (a != -1) {	str = modifierNames[a];    	a = 0;	for (i=0; i<WMGetPopUpButtonNumberOfItems(panel->grabP); i++) {	    if (strstr(WMGetPopUpButtonItem(panel->grabP, i), str)) {		WMSetPopUpButtonSelectedItem(panel->grabP, i);		a = 1;		break;	    }	}    }    if (a < 1) {	sscanf(WMGetPopUpButtonItem(panel->grabP, 0), "%s", buffer);	WMSetPopUpButtonSelectedItem(panel->grabP, 0);	wwarning(_("modifier key %s for option ModifierKey was not recognized. Using %s as default"),		 str, buffer);    }}