| Index: ui/ozone/platform/dri/gbm_surfaceless.cc
 | 
| diff --git a/ui/ozone/platform/dri/gbm_surfaceless.cc b/ui/ozone/platform/dri/gbm_surfaceless.cc
 | 
| index 50deedafc9f59be02e95f77527987d0e138dfbce..b3748445a369b53d97866b759da0455c26cc4c0d 100644
 | 
| --- a/ui/ozone/platform/dri/gbm_surfaceless.cc
 | 
| +++ b/ui/ozone/platform/dri/gbm_surfaceless.cc
 | 
| @@ -5,13 +5,15 @@
 | 
|  #include "ui/ozone/platform/dri/gbm_surfaceless.h"
 | 
|  
 | 
|  #include "ui/ozone/platform/dri/dri_vsync_provider.h"
 | 
| +#include "ui/ozone/platform/dri/dri_window_delegate.h"
 | 
|  #include "ui/ozone/platform/dri/gbm_buffer.h"
 | 
| +#include "ui/ozone/platform/dri/hardware_display_controller.h"
 | 
|  
 | 
|  namespace ui {
 | 
|  
 | 
| -GbmSurfaceless::GbmSurfaceless(
 | 
| -    const base::WeakPtr<HardwareDisplayController>& controller)
 | 
| -    : controller_(controller) {}
 | 
| +GbmSurfaceless::GbmSurfaceless(DriWindowDelegate* window_delegate)
 | 
| +    : window_delegate_(window_delegate) {
 | 
| +}
 | 
|  
 | 
|  GbmSurfaceless::~GbmSurfaceless() {}
 | 
|  
 | 
| @@ -26,17 +28,18 @@ bool GbmSurfaceless::ResizeNativeWindow(const gfx::Size& viewport_size) {
 | 
|  }
 | 
|  
 | 
|  bool GbmSurfaceless::OnSwapBuffers() {
 | 
| -  if (!controller_)
 | 
| +  HardwareDisplayController* controller = window_delegate_->GetController();
 | 
| +  if (!controller)
 | 
|      return true;
 | 
|  
 | 
| -  bool success = controller_->SchedulePageFlip();
 | 
| -  controller_->WaitForPageFlipEvent();
 | 
| +  bool success = controller->SchedulePageFlip();
 | 
| +  controller->WaitForPageFlipEvent();
 | 
|  
 | 
|    return success;
 | 
|  }
 | 
|  
 | 
|  scoped_ptr<gfx::VSyncProvider> GbmSurfaceless::CreateVSyncProvider() {
 | 
| -  return scoped_ptr<gfx::VSyncProvider>(new DriVSyncProvider(controller_));
 | 
| +  return scoped_ptr<gfx::VSyncProvider>(new DriVSyncProvider(window_delegate_));
 | 
|  }
 | 
|  
 | 
|  }  // namespace ui
 | 
| 
 |