All users were logged out of Bugzilla on October 13th, 2018
Created attachment 458137 [details] [diff] [review] fix offsets BasicTextureImage creates a surface for a sub-region of its total area, but doesn't set surface offsets correctly. Thus the context is always rendered to as if it were at 0,0, leading to incorrect rendering. This wasn't visible before retained layers, because we'd always only render the full layer and never a partial area on it. The attached patch fixes things. While looking into this, the code at http://hg.mozilla.org/mozilla-central/file/def9068a4446/gfx/layers/opengl/ThebesLayerOGL.cpp#l147 breaks my head a little, specifically the MoveBy and Translate. I don't have anything specific there, but it's worth a closer look.
Created attachment 458151 [details] [diff] [review] fix offsets, v2 There was something quirky going on there, though not what I thought it was. The second part of the problem was that BeginUpdate was modifying the passed-in region (to request a full rectangle repaint), but that request was being ignored. We need to take that into account. With this patch I can render everything I've tried with the GL layers backend with no errors.
Comment on attachment 458151 [details] [diff] [review] fix offsets, v2 Thanks. I'm now thoroughly confused about your if-bracing style. The \n's eliminated here, I added because of your review comments.
Attachment #458151 - Flags: review?(jones.chris.g) → review+
Status: NEW → RESOLVED
Last Resolved: 8 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.