]> git.sur5r.net Git - i3/i3/blobdiff - src/debug.c
ipc/parser: commands can now return custom JSON replies
[i3/i3] / src / debug.c
index 0d9066b365657a0b73279ba9b706ed0fe1eb2c79..de47fca257299b32cfe95e00be7e148a4c7e209d 100644 (file)
@@ -3,15 +3,18 @@
  *
  * i3 - an improved dynamic tiling window manager
  *
- * (c) 2009 Michael Stapelberg and contributors
+ * © 2009-2010 Michael Stapelberg and contributors
  *
  * See file LICENSE for license information.
  *
+ * debug.c: Contains debugging functions, especially FormatEvent, which prints unhandled events.
+ *          This code is from xcb-util.
+ *
  */
 #include <stdio.h>
 #include <xcb/xcb.h>
 
-/* Debug functions here, especially the FormatEvent-stuff, which prints unhandled events */
+#include "log.h"
 
 static const char *labelError[] = {
     "Success",
@@ -218,19 +221,21 @@ int format_event(xcb_generic_event_t *e) {
 
     switch(e->response_type) {
     case 0:
-        printf("Error %s on seqnum %d (%s).\n",
+        DLOG("Error %s on seqnum %d (%s).\n",
             labelError[*((uint8_t *) e + 1)],
             seqnum,
             labelRequest[*((uint8_t *) e + 10)]);
         break;
     default:
-        printf("Event %s following seqnum %d%s.\n",
+        if (e->response_type > sizeof(labelEvent) / sizeof(char*))
+                break;
+        DLOG("Event %s following seqnum %d%s.\n",
             labelEvent[e->response_type],
             seqnum,
             labelSendEvent[sendEvent]);
         break;
     case XCB_KEYMAP_NOTIFY:
-        printf("Event %s%s.\n",
+        DLOG("Event %s%s.\n",
             labelEvent[e->response_type],
             labelSendEvent[sendEvent]);
         break;