diff options
author | okan <okan> | 2013-01-01 14:26:29 +0000 |
---|---|---|
committer | okan <okan> | 2013-01-01 14:26:29 +0000 |
commit | 6cb334e50375837365cea46b962a534c852df055 (patch) | |
tree | 1b65efca3c51a5bf6718c3406d691b11783c0378 /client.c | |
parent | 0957fbbee2426faa00ca759ad772e650f87c745c (diff) | |
download | cwm-6cb334e50375837365cea46b962a534c852df055.tar.gz cwm-6cb334e50375837365cea46b962a534c852df055.tar.xz cwm-6cb334e50375837365cea46b962a534c852df055.zip |
replace emptystring with strdup here as well so we know we are free'ing
a malloc'd variable everytime; from Tiago Cunha
Diffstat (limited to 'client.c')
-rw-r--r-- | client.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/client.c b/client.c index 3a20e00..cb477e1 100644 --- a/client.c +++ b/client.c @@ -41,7 +41,6 @@ static void client_gethints(struct client_ctx *); static void client_freehints(struct client_ctx *); static int client_inbound(struct client_ctx *, int, int); -static char emptystring[] = ""; struct client_ctx *_curcc = NULL; struct client_ctx * @@ -166,8 +165,7 @@ client_delete(struct client_ctx *cc) while ((wn = TAILQ_FIRST(&cc->nameq)) != NULL) { TAILQ_REMOVE(&cc->nameq, wn, entry); - if (wn->name != emptystring) - free(wn->name); + free(wn->name); free(wn); } @@ -558,7 +556,7 @@ client_setname(struct client_ctx *cc) if (!xu_getstrprop(cc->win, ewmh[_NET_WM_NAME].atom, &newname)) if (!xu_getstrprop(cc->win, XA_WM_NAME, &newname)) - newname = emptystring; + newname = xstrdup(""); TAILQ_FOREACH(wn, &cc->nameq, entry) if (strcmp(wn->name, newname) == 0) { @@ -581,8 +579,7 @@ match: wn = TAILQ_FIRST(&cc->nameq); assert(wn != NULL); TAILQ_REMOVE(&cc->nameq, wn, entry); - if (wn->name != emptystring) - free(wn->name); + free(wn->name); free(wn); cc->nameqlen--; } |