| Index: ui/base/idle/idle_query_x11.cc
|
| diff --git a/ui/base/idle/idle_query_x11.cc b/ui/base/idle/idle_query_x11.cc
|
| index 30bdeb6542a315c1f95cc1377a4ac1d998ac606f..1b1d5b5997e7559007f794d7e89d9b693b61b032 100644
|
| --- a/ui/base/idle/idle_query_x11.cc
|
| +++ b/ui/base/idle/idle_query_x11.cc
|
| @@ -17,18 +17,14 @@ class IdleData {
|
| int error_base;
|
| if (XScreenSaverQueryExtension(gfx::GetXDisplay(), &event_base,
|
| &error_base)) {
|
| - mit_info = XScreenSaverAllocInfo();
|
| - } else {
|
| - mit_info = NULL;
|
| + mit_info.reset(XScreenSaverAllocInfo());
|
| }
|
| }
|
|
|
| ~IdleData() {
|
| - if (mit_info)
|
| - XFree(mit_info);
|
| }
|
|
|
| - XScreenSaverInfo *mit_info;
|
| + gfx::XScopedPtr<XScreenSaverInfo> mit_info;
|
| };
|
|
|
| IdleQueryX11::IdleQueryX11() : idle_data_(new IdleData()) {}
|
| @@ -41,7 +37,7 @@ int IdleQueryX11::IdleTime() {
|
|
|
| if (XScreenSaverQueryInfo(gfx::GetXDisplay(),
|
| RootWindow(gfx::GetXDisplay(), 0),
|
| - idle_data_->mit_info)) {
|
| + idle_data_->mit_info.get())) {
|
| return (idle_data_->mit_info->idle) / 1000;
|
| } else {
|
| return 0;
|
|
|