- xname = in_get_key_name(dev_id, k);\r
- len = strlen(static_buff);\r
- if (len) {\r
- strncat(static_buff, can_combo ? " + " : ", ",\r
- sizeof(static_buff) - len - 1);\r
- len += can_combo ? 3 : 2;\r
+ in_get_config(dev, IN_CFG_BIND_COUNT, &count);\r
+ in_get_config(dev, IN_CFG_DOES_COMBOS, &combo);\r
+ combo = combo && can_combo;\r
+\r
+ for (k = 0; k < count; k++) {\r
+ const char *xname;\r
+ int len;\r
+\r
+ if (!(binds[IN_BIND_OFFS(k, type)] & action_mask))\r
+ continue;\r
+\r
+ xname = in_get_key_name(dev, k);\r
+ len = strlen(static_buff);\r
+ if (len) {\r
+ strncat(static_buff, combo ? " + " : ", ",\r
+ sizeof(static_buff) - len - 1);\r
+ len += combo ? 3 : 2;\r
+ }\r
+ strncat(static_buff, xname, sizeof(static_buff) - len - 1);\r