Move the group index (desktop number) check to the only 2 callers that require

checking due to ewmh.
This commit is contained in:
okan 2019-02-28 23:26:12 +00:00
parent 880b5cda3f
commit ae231f67d0
2 changed files with 6 additions and 14 deletions

12
group.c
View File

@ -156,9 +156,6 @@ group_movetogroup(struct client_ctx *cc, int idx)
struct screen_ctx *sc = cc->sc; struct screen_ctx *sc = cc->sc;
struct group_ctx *gc; struct group_ctx *gc;
if (idx < 0 || idx >= Conf.ngroups)
return;
TAILQ_FOREACH(gc, &sc->groupq, entry) { TAILQ_FOREACH(gc, &sc->groupq, entry) {
if (gc->num == idx) { if (gc->num == idx) {
if (cc->gc == gc) if (cc->gc == gc)
@ -216,9 +213,6 @@ group_hidetoggle(struct screen_ctx *sc, int idx)
{ {
struct group_ctx *gc; struct group_ctx *gc;
if (idx < 0 || idx >= Conf.ngroups)
return;
TAILQ_FOREACH(gc, &sc->groupq, entry) { TAILQ_FOREACH(gc, &sc->groupq, entry) {
if (gc->num == idx) { if (gc->num == idx) {
if (group_holds_only_hidden(gc)) if (group_holds_only_hidden(gc))
@ -238,9 +232,6 @@ group_only(struct screen_ctx *sc, int idx)
{ {
struct group_ctx *gc; struct group_ctx *gc;
if (idx < 0 || idx >= Conf.ngroups)
return;
TAILQ_FOREACH(gc, &sc->groupq, entry) { TAILQ_FOREACH(gc, &sc->groupq, entry) {
if (gc->num == idx) if (gc->num == idx)
group_show(gc); group_show(gc);
@ -255,9 +246,6 @@ group_close(struct screen_ctx *sc, int idx)
struct group_ctx *gc; struct group_ctx *gc;
struct client_ctx *cc; struct client_ctx *cc;
if (idx < 0 || idx >= Conf.ngroups)
return;
TAILQ_FOREACH(gc, &sc->groupq, entry) { TAILQ_FOREACH(gc, &sc->groupq, entry) {
if (gc->num == idx) { if (gc->num == idx) {
TAILQ_FOREACH(cc, &gc->clientq, group_entry) TAILQ_FOREACH(cc, &gc->clientq, group_entry)

View File

@ -408,7 +408,9 @@ xev_handle_clientmessage(XEvent *ee)
if (e->data.l[0] == (unsigned long)-1) if (e->data.l[0] == (unsigned long)-1)
group_movetogroup(cc, 0); group_movetogroup(cc, 0);
else else
group_movetogroup(cc, e->data.l[0]); if (e->data.l[0] >= 0 &&
e->data.l[0] < Conf.ngroups)
group_movetogroup(cc, e->data.l[0]);
} }
} else if (e->message_type == ewmh[_NET_WM_STATE]) { } else if (e->message_type == ewmh[_NET_WM_STATE]) {
if ((cc = client_find(e->window)) != NULL) { if ((cc = client_find(e->window)) != NULL) {
@ -417,7 +419,9 @@ xev_handle_clientmessage(XEvent *ee)
} }
} else if (e->message_type == ewmh[_NET_CURRENT_DESKTOP]) { } else if (e->message_type == ewmh[_NET_CURRENT_DESKTOP]) {
if ((sc = screen_find(e->window)) != NULL) { if ((sc = screen_find(e->window)) != NULL) {
group_only(sc, e->data.l[0]); if (e->data.l[0] >= 0 &&
e->data.l[0] < Conf.ngroups)
group_only(sc, e->data.l[0]);
} }
} }
} }