diff options
author | okan <okan> | 2010-02-10 01:23:05 +0000 |
---|---|---|
committer | okan <okan> | 2010-02-10 01:23:05 +0000 |
commit | 507480a69503bd3a5924ebd8cc2e9a971efe62d9 (patch) | |
tree | 3de6541fa3cbf8d2406b2a932f40b79e2931fb64 /kbfunc.c | |
parent | c4a97053cd98160c9e0f55e2b7fb71de73616579 (diff) | |
download | cwm-507480a69503bd3a5924ebd8cc2e9a971efe62d9.tar.gz cwm-507480a69503bd3a5924ebd8cc2e9a971efe62d9.tar.xz cwm-507480a69503bd3a5924ebd8cc2e9a971efe62d9.zip |
preserve labels after an edit action is aborted; extending the menu
struct just for this is the least intrusive approach until the menu code is reviewed. inspired by Thomas Pfaff's report on tech@ ok oga@
Diffstat (limited to 'kbfunc.c')
-rw-r--r-- | kbfunc.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/kbfunc.c b/kbfunc.c index 00d5212..c4ee7ed 100644 --- a/kbfunc.c +++ b/kbfunc.c @@ -400,19 +400,19 @@ kbfunc_client_label(struct client_ctx *cc, union arg *arg) { struct menu *mi; struct menu_q menuq; - char *current; TAILQ_INIT(&menuq); - current = cc->label; + /* dummy is set, so this will always return */ + mi = menu_filter(cc->sc, &menuq, "label", cc->label, 1, + search_match_text, NULL); - if ((mi = menu_filter(cc->sc, &menuq, "label", current, 1, - search_match_text, NULL)) != NULL) { + if (!mi->abort) { if (cc->label != NULL) xfree(cc->label); cc->label = xstrdup(mi->text); - xfree(mi); } + xfree(mi); } void |