diff options
author | okan | 2011-09-13 08:37:49 +0000 |
---|---|---|
committer | okan | 2011-09-13 08:37:49 +0000 |
commit | db10c1c1a927983fc1a37dff141f42fb0a3cbad6 (patch) | |
tree | 76d5950793bb52b516fc335d22970be5d5f0df0e | |
parent | ce2d7e32150af2dba656d99ed0bf931645425ee7 (diff) | |
download | cwm-db10c1c1a927983fc1a37dff141f42fb0a3cbad6.tar.gz |
repair groupcycle (broke after cycle-in-group support added more flags);
found by and fix from Thomas Pfaff.
ok oga@
-rw-r--r-- | group.c | 12 |
1 files changed, 6 insertions, 6 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.51 2011/07/25 15:10:24 okan Exp $ + * $OpenBSD: group.c,v 1.52 2011/09/13 08:37:49 okan Exp $ */ #include <sys/param.h> @@ -313,7 +313,7 @@ group_only(struct screen_ctx *sc, int idx) * Cycle through active groups. If none exist, then just stay put. */ void -group_cycle(struct screen_ctx *sc, int reverse) +group_cycle(struct screen_ctx *sc, int flags) { struct group_ctx *gc, *showgroup = NULL; @@ -321,11 +321,11 @@ group_cycle(struct screen_ctx *sc, int reverse) gc = sc->group_active; for (;;) { - gc = reverse ? TAILQ_PREV(gc, group_ctx_q, entry) : - TAILQ_NEXT(gc, entry); + gc = (flags & CWM_RCYCLE) ? TAILQ_PREV(gc, group_ctx_q, + entry) : TAILQ_NEXT(gc, entry); if (gc == NULL) - gc = reverse ? TAILQ_LAST(&sc->groupq, group_ctx_q) : - TAILQ_FIRST(&sc->groupq); + gc = (flags & CWM_RCYCLE) ? TAILQ_LAST(&sc->groupq, + group_ctx_q) : TAILQ_FIRST(&sc->groupq); if (gc == sc->group_active) break; |