diff --git a/src/common/idle.c b/src/common/idle.c
index 92cf801f9a5a5aba240999df1a5f709a3fff601c..808f7ad05231671237d086ea11db98a8696d01ac 100644
--- a/src/common/idle.c
+++ b/src/common/idle.c
@@ -56,18 +56,16 @@ static PyObject * idle_getIdleSec(PyObject *self, PyObject *args)
 #ifndef _WIN32
 	static XScreenSaverInfo *mit_info = NULL;
 	int idle_time, event_base, error_base;
-	Display *dplay;
 #else
 	int idle_time = 0;
 #endif
 
 #ifndef _WIN32
-	dplay = XOpenDisplay(NULL);
-	if (!XScreenSaverQueryExtension(dplay, &event_base, &error_base))
+	if (!XScreenSaverQueryExtension(display, &event_base, &error_base))
 	{
 		if (mit_info == NULL)
 			mit_info = XScreenSaverAllocInfo();
-		XScreenSaverQueryInfo(dplay, RootWindow(dplay, 0), mit_info);
+		XScreenSaverQueryInfo(display, RootWindow(display, 0), mit_info);
 		idle_time = (mit_info->idle) / 1000;
 	}
 	else