Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(306)

Side by Side Diff: ui/gl/gl_surface_ozone.cc

Issue 1475683002: ozone: Fix flow control regression in ARM swap buffers code path (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ui/gl/gl_surface.h" 5 #include "ui/gl/gl_surface.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/callback.h" 8 #include "base/callback.h"
9 #include "base/location.h" 9 #include "base/location.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after
359 359
360 base::Closure fence_wait_task = 360 base::Closure fence_wait_task =
361 base::Bind(&WaitForFence, GetDisplay(), fence); 361 base::Bind(&WaitForFence, GetDisplay(), fence);
362 362
363 base::Closure fence_retired_callback = 363 base::Closure fence_retired_callback =
364 base::Bind(&GLSurfaceOzoneSurfaceless::FenceRetired, 364 base::Bind(&GLSurfaceOzoneSurfaceless::FenceRetired,
365 weak_factory_.GetWeakPtr(), fence, frame); 365 weak_factory_.GetWeakPtr(), fence, frame);
366 366
367 base::WorkerPool::PostTaskAndReply(FROM_HERE, fence_wait_task, 367 base::WorkerPool::PostTaskAndReply(FROM_HERE, fence_wait_task,
368 fence_retired_callback, false); 368 fence_retired_callback, false);
369 } else if (ozone_surface_->IsUniversalDisplayLinkDevice()) { 369 return; // Defer frame submission until fence signals.
370 }
371
372 if (ozone_surface_->IsUniversalDisplayLinkDevice())
370 glFinish(); 373 glFinish();
371 }
372 374
373 frame->ready = true; 375 frame->ready = true;
374 SubmitFrame(); 376 SubmitFrame();
375 } 377 }
376 378
377 void GLSurfaceOzoneSurfaceless::PostSubBufferAsync( 379 void GLSurfaceOzoneSurfaceless::PostSubBufferAsync(
378 int x, 380 int x,
379 int y, 381 int y,
380 int width, 382 int width,
381 int height, 383 int height,
(...skipping 349 matching lines...) Expand 10 before | Expand all | Expand 10 after
731 } 733 }
732 } 734 }
733 735
734 EGLNativeDisplayType GetPlatformDefaultEGLNativeDisplay() { 736 EGLNativeDisplayType GetPlatformDefaultEGLNativeDisplay() {
735 return ui::OzonePlatform::GetInstance() 737 return ui::OzonePlatform::GetInstance()
736 ->GetSurfaceFactoryOzone() 738 ->GetSurfaceFactoryOzone()
737 ->GetNativeDisplay(); 739 ->GetNativeDisplay();
738 } 740 }
739 741
740 } // namespace gfx 742 } // namespace gfx
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698