about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorStevan Andjelkovic <stevan@student.chalmers.se>2011-04-11 23:28:16 +0000
committerStevan Andjelkovic <stevan@student.chalmers.se>2011-04-11 23:28:16 +0000
commit9b309f97afd5a65a242cb2e3f5379afde419cc72 (patch)
treeee7a9879f206d45d78c1c5e77869c95e149b546a
parent3c0760ebdb5375a4d279e913effd0ecf69058721 (diff)
downloadxombrero-9b309f97afd5a65a242cb2e3f5379afde419cc72.tar.gz
Make binding an already bound key possible.
ok marco@
-rw-r--r--xxxterm.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/xxxterm.c b/xxxterm.c
index eddb8f9..8ee62fa 100644
--- a/xxxterm.c
+++ b/xxxterm.c
@@ -4859,11 +4859,12 @@ keybinding_add(char *cmd, char *key, int use_in_entry)
 		return (1);
 	}
 
-	/* make sure it isn't a dupe */
+	/* Remove eventual dupes. */
 	TAILQ_FOREACH(k, &kbl, entry)
 		if (k->key == keyval && k->mask == mask) {
-			warnx("duplicate keybinding for %s", key);
-			return (1);
+			TAILQ_REMOVE(&kbl, k, entry);
+			g_free(k);
+			break;
 		}
 
 	/* add keyname */