From 87bcfe8451984d9c17a92519a97638fdcbb2550b Mon Sep 17 00:00:00 2001 From: okan Date: Tue, 25 Aug 2015 20:35:49 +0000 Subject: Further simplify _NET_WM_DESKTOP handling using new group_assign(). --- group.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'group.c') diff --git a/group.c b/group.c index 6e2b7a4..929ad4f 100644 --- a/group.c +++ b/group.c @@ -16,7 +16,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $OpenBSD: group.c,v 1.117 2015/08/25 19:52:02 okan Exp $ + * $OpenBSD: group.c,v 1.118 2015/08/25 20:35:49 okan Exp $ */ #include @@ -331,20 +331,17 @@ group_restore(struct client_ctx *cc) { struct screen_ctx *sc = cc->sc; struct group_ctx *gc; - int num = -1; + int num; long *grpnum; if (xu_getprop(cc->win, ewmh[_NET_WM_DESKTOP], XA_CARDINAL, 1L, (unsigned char **)&grpnum) <= 0) return(0); - num = MIN(*grpnum, (CALMWM_NGROUPS - 1)); + num = (*grpnum == -1) ? 0 : *grpnum; + num = MIN(num, (CALMWM_NGROUPS - 1)); XFree(grpnum); - if (num == -1) { - group_assign(NULL, cc); - return(1); - } TAILQ_FOREACH(gc, &sc->groupq, entry) { if (gc->num == num) { group_assign(gc, cc); -- cgit v1.2.3-2-gb3c3