diff options
Diffstat (limited to 'group.c')
-rw-r--r-- | group.c | 29 |
1 files changed, 14 insertions, 15 deletions
@@ -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.108 2014/09/27 19:04:32 okan Exp $ + * $OpenBSD: group.c,v 1.109 2014/10/08 12:48:51 okan Exp $ */ #include <sys/param.h> @@ -114,24 +114,23 @@ group_restack(struct group_ctx *gc) } void -group_init(struct screen_ctx *sc) +group_init(struct screen_ctx *sc, int num) { struct group_ctx *gc; - int i; - - for (i = 0; i < CALMWM_NGROUPS; i++) { - gc = xcalloc(1, sizeof(*gc)); - gc->sc = sc; - TAILQ_INIT(&gc->clientq); - gc->name = xstrdup(num_to_name[i]); - gc->num = i; - TAILQ_INSERT_TAIL(&sc->groupq, gc, entry); - if (i == 1) - group_setactive(gc); - } + + gc = xmalloc(sizeof(*gc)); + gc->sc = sc; + gc->name = xstrdup(num_to_name[num]); + gc->num = num; + TAILQ_INIT(&gc->clientq); + + TAILQ_INSERT_TAIL(&sc->groupq, gc, entry); + + if (num == 1) + group_setactive(gc); } -static void +void group_setactive(struct group_ctx *gc) { struct screen_ctx *sc = gc->sc; |