]> git.sur5r.net Git - i3/i3/commitdiff
Detect base 16 in cmd criteria
authorTony Crisci <tony@dubstepdish.com>
Tue, 12 May 2015 21:04:01 +0000 (17:04 -0400)
committerMichael Stapelberg <michael@stapelberg.de>
Thu, 30 Jul 2015 19:38:24 +0000 (21:38 +0200)
Try to detect base 16 numbers given to `con_id` and `id` for command criteria
by setting the base of strtol to 0. This should also detect octal.

This is necessary because mouse bindings now may be serialized as hex as of
5c32de4.

src/commands.c

index fd43a693bf26eb2102a39b5e8b8d8917a01eaaa3..9d5275dc3d57dadb4d70f7bc74b30052107a8151 100644 (file)
@@ -335,7 +335,7 @@ void cmd_criteria_add(I3_CMD, char *ctype, char *cvalue) {
 
     if (strcmp(ctype, "con_id") == 0) {
         char *end;
-        long parsed = strtol(cvalue, &end, 10);
+        long parsed = strtol(cvalue, &end, 0);
         if (parsed == LONG_MIN ||
             parsed == LONG_MAX ||
             parsed < 0 ||
@@ -350,7 +350,7 @@ void cmd_criteria_add(I3_CMD, char *ctype, char *cvalue) {
 
     if (strcmp(ctype, "id") == 0) {
         char *end;
-        long parsed = strtol(cvalue, &end, 10);
+        long parsed = strtol(cvalue, &end, 0);
         if (parsed == LONG_MIN ||
             parsed == LONG_MAX ||
             parsed < 0 ||