aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorokan2011-03-22 10:57:31 +0000
committerokan2011-03-22 10:57:31 +0000
commitc5841193570edf6eca119c583d9e790eef12dcb1 (patch)
tree82cb7021fa6527f717129aceabeaa68ff00fde3a
parent6744c6dfbae31f04a8b397d35d144743b5845246 (diff)
downloadcwm-c5841193570edf6eca119c583d9e790eef12dcb1.tar.gz
introduce nitems macro, with the appropriate ifndef.
ok oga@
-rw-r--r--calmwm.h6
-rw-r--r--conf.c12
-rw-r--r--search.c9
-rw-r--r--xutil.c10
4 files changed, 18 insertions, 19 deletions
diff --git a/calmwm.h b/calmwm.h
index 59da0f1..0f9b18b 100644
--- a/calmwm.h
+++ b/calmwm.h
@@ -15,7 +15,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $Id: calmwm.h,v 1.121 2011/03/22 10:52:37 okan Exp $
+ * $Id: calmwm.h,v 1.122 2011/03/22 10:57:31 okan Exp $
*/
#ifndef _CALMWM_H_
@@ -51,6 +51,10 @@
PointerMotionMask)
#define SearchMask (KeyPressMask|ExposureMask)
+#ifndef nitems
+#define nitems(_a) (sizeof((_a)) / sizeof((_a)[0]))
+#endif
+
enum cwmcolor {
CWM_COLOR_BORDOR_ACTIVE,
CWM_COLOR_BORDER_INACTIVE,
diff --git a/conf.c b/conf.c
index 7272eb8..b0af4ca 100644
--- a/conf.c
+++ b/conf.c
@@ -15,7 +15,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $Id: conf.c,v 1.76 2010/01/27 03:04:50 okan Exp $
+ * $Id: conf.c,v 1.77 2011/03/22 10:57:31 okan Exp $
*/
#include <sys/param.h>
@@ -191,10 +191,10 @@ conf_init(struct conf *c)
TAILQ_INIT(&c->autogroupq);
TAILQ_INIT(&c->mousebindingq);
- for (i = 0; i < sizeof(kb_binds) / sizeof(kb_binds[0]); i++)
+ for (i = 0; i < nitems(kb_binds); i++)
conf_bindname(c, kb_binds[i].key, kb_binds[i].func);
- for (i = 0; i < sizeof(m_binds) / sizeof(m_binds[0]); i++)
+ for (i = 0; i < nitems(m_binds); i++)
conf_mousebind(c, m_binds[i].key, m_binds[i].func);
/* Default term/lock */
@@ -467,8 +467,7 @@ conf_bindname(struct conf *c, char *name, char *binding)
current_binding = xcalloc(1, sizeof(*current_binding));
if ((substring = strchr(name, '-')) != NULL) {
- for (iter = 0; iter < (sizeof(bind_mods) /
- sizeof(bind_mods[0])); iter++) {
+ for (iter = 0; iter < nitems(bind_mods); iter++) {
if ((tmp = strchr(name, bind_mods[iter].chr)) !=
NULL && tmp < substring) {
current_binding->modmask |=
@@ -573,8 +572,7 @@ conf_mousebind(struct conf *c, char *name, char *binding)
current_binding = xcalloc(1, sizeof(*current_binding));
if ((substring = strchr(name, '-')) != NULL) {
- for (iter = 0; iter < (sizeof(bind_mods) /
- sizeof(bind_mods[0])); iter++) {
+ for (iter = 0; iter < nitems(bind_mods); iter++) {
if ((tmp = strchr(name, bind_mods[iter].chr)) !=
NULL && tmp < substring) {
current_binding->modmask |=
diff --git a/search.c b/search.c
index 940e4cd..df9ce80 100644
--- a/search.c
+++ b/search.c
@@ -14,7 +14,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $Id: search.c,v 1.21 2010/09/25 20:01:27 okan Exp $
+ * $Id: search.c,v 1.22 2011/03/22 10:57:31 okan Exp $
*/
#include <sys/param.h>
@@ -42,9 +42,6 @@ search_match_client(struct menu_q *menuq, struct menu_q *resultq, char *search)
{
struct winname *wn;
struct menu *mi, *tierp[4], *before = NULL;
- int ntiers;
-
- ntiers = sizeof(tierp) / sizeof(tierp[0]);
TAILQ_INIT(resultq);
@@ -92,14 +89,14 @@ search_match_client(struct menu_q *menuq, struct menu_q *resultq, char *search)
* window. Furthermore, this is denoted by a "!" when
* printing the window name in the search menu.
*/
- if (cc == client_current() && tier < ntiers - 1)
+ if (cc == client_current() && tier < nitems(tierp) - 1)
tier++;
/* Clients that are hidden get ranked one up. */
if (cc->flags & CLIENT_HIDDEN && tier > 0)
tier--;
- assert(tier < ntiers);
+ assert(tier < nitems(tierp));
/*
* If you have a tierp, insert after it, and make it
diff --git a/xutil.c b/xutil.c
index b50242a..5e5940b 100644
--- a/xutil.c
+++ b/xutil.c
@@ -15,7 +15,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $Id: xutil.c,v 1.33 2011/03/22 10:49:46 okan Exp $
+ * $Id: xutil.c,v 1.34 2011/03/22 10:57:31 okan Exp $
*/
#include <sys/param.h>
@@ -57,7 +57,7 @@ void
xu_btn_grab(Window win, int mask, u_int btn)
{
int i;
- for (i = 0; i < sizeof(ign_mods)/sizeof(*ign_mods); i++)
+ for (i = 0; i < nitems(ign_mods); i++)
XGrabButton(X_Dpy, btn, (mask | ign_mods[i]), win,
False, ButtonMask, GrabModeAsync,
GrabModeSync, None, None);
@@ -67,7 +67,7 @@ void
xu_btn_ungrab(Window win, int mask, u_int btn)
{
int i;
- for (i = 0; i < sizeof(ign_mods)/sizeof(*ign_mods); i++)
+ for (i = 0; i < nitems(ign_mods); i++)
XUngrabButton(X_Dpy, btn, (mask | ign_mods[i]), win);
}
@@ -98,7 +98,7 @@ xu_key_grab(Window win, int mask, int keysym)
(XKeycodeToKeysym(X_Dpy, code, 1) == keysym))
mask |= ShiftMask;
- for (i = 0; i < sizeof(ign_mods)/sizeof(*ign_mods); i++)
+ for (i = 0; i < nitems(ign_mods); i++)
XGrabKey(X_Dpy, code, (mask | ign_mods[i]), win,
True, GrabModeAsync, GrabModeAsync);
}
@@ -114,7 +114,7 @@ xu_key_ungrab(Window win, int mask, int keysym)
(XKeycodeToKeysym(X_Dpy, code, 1) == keysym))
mask |= ShiftMask;
- for (i = 0; i < sizeof(ign_mods)/sizeof(*ign_mods); i++)
+ for (i = 0; i < nitems(ign_mods); i++)
XUngrabKey(X_Dpy, code, (mask | ign_mods[i]), win);
}