diff options
author | dcheng@chromium.org <dcheng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-12 16:20:48 +0000 |
---|---|---|
committer | dcheng@chromium.org <dcheng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-05-12 16:20:48 +0000 |
commit | c78c0e3bee827222b34cd72dcaba23d2fc6bf07e (patch) | |
tree | bd37301813f3ab00f69825734ed60bb27f62fcd5 /chrome/browser/idle_query_linux.cc | |
parent | 5e14e7ded745d6d5e4f252935349285958a50cac (diff) | |
download | chromium_src-c78c0e3bee827222b34cd72dcaba23d2fc6bf07e.zip chromium_src-c78c0e3bee827222b34cd72dcaba23d2fc6bf07e.tar.gz chromium_src-c78c0e3bee827222b34cd72dcaba23d2fc6bf07e.tar.bz2 |
Use GetXDisplay() instead of XOpenDisplay() in IdleQueryLinux.
We weren't checking that XOpenDisplay was actually succeeding before
attempting to use the display.
BUG=82308
TEST=none
Review URL: http://codereview.chromium.org/7015007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85138 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/idle_query_linux.cc')
-rw-r--r-- | chrome/browser/idle_query_linux.cc | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/chrome/browser/idle_query_linux.cc b/chrome/browser/idle_query_linux.cc index 41d4aba..dfa2fb5 100644 --- a/chrome/browser/idle_query_linux.cc +++ b/chrome/browser/idle_query_linux.cc @@ -4,8 +4,8 @@ #include "chrome/browser/idle_query_linux.h" -#include <X11/Xlib.h> #include <X11/extensions/scrnsaver.h> +#include "ui/base/x/x11_util.h" namespace browser { @@ -14,8 +14,8 @@ class IdleData { IdleData() { int event_base; int error_base; - display = XOpenDisplay(NULL); - if (XScreenSaverQueryExtension(display, &event_base, &error_base)) { + if (XScreenSaverQueryExtension(ui::GetXDisplay(), &event_base, + &error_base)) { mit_info = XScreenSaverAllocInfo(); } else { mit_info = NULL; @@ -23,16 +23,11 @@ class IdleData { } ~IdleData() { - if (display) { - XCloseDisplay(display); - display = NULL; - } if (mit_info) XFree(mit_info); } XScreenSaverInfo *mit_info; - Display *display; }; IdleQueryLinux::IdleQueryLinux() : idle_data_(new IdleData()) {} @@ -40,11 +35,11 @@ IdleQueryLinux::IdleQueryLinux() : idle_data_(new IdleData()) {} IdleQueryLinux::~IdleQueryLinux() {} int IdleQueryLinux::IdleTime() { - if (!idle_data_->mit_info || !idle_data_->display) + if (!idle_data_->mit_info) return 0; - if (XScreenSaverQueryInfo(idle_data_->display, - RootWindow(idle_data_->display, 0), + if (XScreenSaverQueryInfo(ui::GetXDisplay(), + RootWindow(ui::GetXDisplay(), 0), idle_data_->mit_info)) { return (idle_data_->mit_info->idle) / 1000; } else { |