New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 770369 link

Starred by 4 users

Issue metadata

Status: Fixed
Owner:
Closed: Oct 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug



Sign in to add a comment

Raster has inconsistent color spaces in CoreAnimation renderer

Project Member Reported by ccameron@chromium.org, Sep 29 2017

Issue description

Run chrome with
- GPU raster disabled
- a non-sRGB color profile
- CoreAnimation compositing

Open an image, and drag the window size, as in the attached movie.

Notice that color spaces flicker.

This is because we're getting two different color spaces at GpuMemoryBuffer allocation time:
ScopedWriteLockGpuMemoryBuffer::GetGpuMemoryBuffer gets:
  {primaries:[[0.564011,0.240677,0.159515,],
              [0.283691,0.650345,0.0659485,],
              [0.0181885,0.0565643,0.750443,],],
   transfer:[1,0,0,0,0,0,2.2,],
   matrix:1, range:2, icc_profile_id:10}

ScopedWriteLockGL::AllocateGpuMemoryBuffer gets:
  {primaries:1, transfer:13, matrix:1, range:2, icc_profile_id:0}

But ... the cc::Resources have the same color space. So we get flickering in CoreAnimation rendering only.

This appears to have worked in Chrome 61 and regressed sometime recently.
 
Actually attaching screencast
flicker.mov
5.7 MB Download
Cc: hubbe@chromium.org
Labels: -Pri-3 M-62 Pri-1
Actually, this is yet another issue with how we cache ICC profiles (that code can't die fast enough). It'll require a small hack merge to 62.

And I'm going to get rid of this mess once and for all after that.
Cc: ccameron@chromium.org
 Issue 770219  has been merged into this issue.
Summary: Raster has inconsistent color spaces in CoreAnimation renderer (was: Software raster has inconsistent color spaces in CoreAnimation renderer)
 Issue 770398  has been merged into this issue.
 Issue 770418  has been merged into this issue.
Status: Fixed (was: Assigned)
 Issue 777205  has been merged into this issue.
The checking to fix this was in r505491, in  issue 770219 .

Sign in to add a comment