diff options
Diffstat (limited to 'key-bindings.c')
-rw-r--r-- | key-bindings.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/key-bindings.c b/key-bindings.c index a922eb18..0d13385d 100644 --- a/key-bindings.c +++ b/key-bindings.c @@ -68,12 +68,12 @@ void key_bindings_unref_table(struct key_table *table) { struct key_binding *bd; + struct key_binding *bd1; if (--table->references != 0) return; - while (!RB_EMPTY(&table->key_bindings)) { - bd = RB_ROOT(&table->key_bindings); + RB_FOREACH_SAFE(bd, key_bindings, &table->key_bindings, bd1) { RB_REMOVE(key_bindings, &table->key_bindings, bd); cmd_list_free(bd->cmdlist); free(bd); |