summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJérémie Courrèges-Anglas <jca@wxcvbn.org>2013-08-08 03:04:39 +0200
committerJérémie Courrèges-Anglas <jca@wxcvbn.org>2013-08-08 03:06:19 +0200
commitbe52c867c96763cca28fed963efadd8fa0d37889 (patch)
treee2089da962891a47bc956765abf59a0e19437944 /src
parentbb0b20dcce7493b583f3774606527ca6776e392c (diff)
downloadratpoison-be52c867c96763cca28fed963efadd8fa0d37889.zip
Cleanup cmd_sfdump.
Better variable names, more readable formatting. Use a fixed buffer for the screen number appended to each frameset.
Diffstat (limited to 'src')
-rw-r--r--src/actions.c29
1 files changed, 15 insertions, 14 deletions
diff --git a/src/actions.c b/src/actions.c
index 2de51fd..1f2d0ca 100644
--- a/src/actions.c
+++ b/src/actions.c
@@ -5475,33 +5475,34 @@ cmd_set (int interactive UNUSED, struct cmdarg **args)
cmdret *
cmd_sfdump (int interactively UNUSED, struct cmdarg **args UNUSED)
{
+ char screen_suffix[16];
cmdret *ret;
- struct sbuf *s;
- char *tmp2;
+ struct sbuf *dump;
rp_frame *cur;
int i;
- s = sbuf_new (0);
+ dump = sbuf_new (0);
- for (i=0; i<num_screens; i++)
+ for (i = 0; i < num_screens; i++)
{
- tmp2 = xsprintf (" %d,", (rp_have_xinerama)?(screens[i].xine_screen_num):(screens[i].screen_num));
+ snprintf (screen_suffix, sizeof (screen_suffix), " %d,",
+ rp_have_xinerama ?
+ screens[i].xine_screen_num :
+ screens[i].screen_num);
/* FIXME: Oooh, gross! there's a trailing comma, yuk! */
list_for_each_entry (cur, &(screens[i].frames), node)
{
- char *tmp;
+ char *frameset;
- tmp = frame_dump (cur, &screens[i]);
- sbuf_concat (s, tmp);
- sbuf_concat (s, tmp2);
- free (tmp);
+ frameset = frame_dump (cur, &screens[i]);
+ sbuf_concat (dump, frameset);
+ sbuf_concat (dump, screen_suffix);
+ free (frameset);
}
-
- free (tmp2);
}
- ret = cmdret_new (RET_SUCCESS, "%s", sbuf_get (s));
- sbuf_free (s);
+ ret = cmdret_new (RET_SUCCESS, "%s", sbuf_get (dump));
+ sbuf_free (dump);
return ret;
}