]> git.sur5r.net Git - i3/i3lock/blobdiff - xinerama.c
remove support for NOLIBCAIRO, cairo-xcb is widespread by now
[i3/i3lock] / xinerama.c
index 91be487ab7ea4394793966c5eea92d5c7eb8ed7d..47a35f97e736803ac937af83acaf88a8a0d1689b 100644 (file)
@@ -13,6 +13,7 @@
 #include <xcb/xcb.h>
 #include <xcb/xinerama.h>
 
+#include "i3lock.h"
 #include "xcb.h"
 #include "xinerama.h"
 
@@ -23,10 +24,11 @@ int xr_screens = 0;
 Rect *xr_resolutions;
 
 static bool xinerama_active;
+extern bool debug_mode;
 
-void xinerama_init() {
+void xinerama_init(void) {
     if (!xcb_get_extension_data(conn, &xcb_xinerama_id)->present) {
-        printf("Xinerama extension not found, disabling.\n");
+        DEBUG("Xinerama extension not found, disabling.\n");
         return;
     }
 
@@ -44,9 +46,10 @@ void xinerama_init() {
     }
 
     xinerama_active = true;
+    free(reply);
 }
 
-void xinerama_query_screens() {
+void xinerama_query_screens(void) {
     if (!xinerama_active)
         return;
 
@@ -57,7 +60,8 @@ void xinerama_query_screens() {
     cookie = xcb_xinerama_query_screens_unchecked(conn);
     reply = xcb_xinerama_query_screens_reply(conn, cookie, NULL);
     if (!reply) {
-        fprintf(stderr, "Couldn't get Xinerama screens\n");
+        if (debug_mode)
+            fprintf(stderr, "Couldn't get Xinerama screens\n");
         return;
     }
     screen_info = xcb_xinerama_query_screens_screen_info(reply);
@@ -77,7 +81,7 @@ void xinerama_query_screens() {
         xr_resolutions[screen].y = screen_info[screen].y_org;
         xr_resolutions[screen].width = screen_info[screen].width;
         xr_resolutions[screen].height = screen_info[screen].height;
-        printf("found Xinerama screen: %d x %d at %d x %d\n",
+        DEBUG("found Xinerama screen: %d x %d at %d x %d\n",
                         screen_info[screen].width, screen_info[screen].height,
                         screen_info[screen].x_org, screen_info[screen].y_org);
     }