Bugfix: check symbol for NULL in binding json dump
When dumping a binding, as is done during the binding event, check symbol for NULL. If it is, dump json null. This prevents a crash when running a binding that was configured with bindcode. fixes #1379
This commit is contained in:
parent
3e841ac5b6
commit
6ba7728136
4
docs/ipc
4
docs/ipc
|
@ -769,9 +769,9 @@ input_code (integer)::
|
||||||
If the binding was configured with +bindcode+, this will be the key code
|
If the binding was configured with +bindcode+, this will be the key code
|
||||||
that was given for the binding. If the binding is a mouse binding, it will be
|
that was given for the binding. If the binding is a mouse binding, it will be
|
||||||
the number of the mouse button that was pressed. Otherwise it will be 0.
|
the number of the mouse button that was pressed. Otherwise it will be 0.
|
||||||
symbol (string)::
|
symbol (string or null)::
|
||||||
If this is a keyboard binding that was configured with +bindsym+, this
|
If this is a keyboard binding that was configured with +bindsym+, this
|
||||||
field will contain the given symbol.
|
field will contain the given symbol. Otherwise it will be +null+.
|
||||||
input_type (string)::
|
input_type (string)::
|
||||||
This will be +"keyboard"+ or +"mouse"+ depending on whether or not this was
|
This will be +"keyboard"+ or +"mouse"+ depending on whether or not this was
|
||||||
a keyboard or a mouse binding.
|
a keyboard or a mouse binding.
|
||||||
|
|
|
@ -160,6 +160,9 @@ static void dump_binding(yajl_gen gen, Binding *bind) {
|
||||||
ystr((const char*)(bind->input_type == B_KEYBOARD ? "keyboard" : "mouse"));
|
ystr((const char*)(bind->input_type == B_KEYBOARD ? "keyboard" : "mouse"));
|
||||||
|
|
||||||
ystr("symbol");
|
ystr("symbol");
|
||||||
|
if (bind->symbol == NULL)
|
||||||
|
y(null);
|
||||||
|
else
|
||||||
ystr(bind->symbol);
|
ystr(bind->symbol);
|
||||||
|
|
||||||
ystr("command");
|
ystr("command");
|
||||||
|
|
Loading…
Reference in New Issue