Bug 89026 - Renderbuffer layered state used for framebuffer completeness test
Summary: Renderbuffer layered state used for framebuffer completeness test
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Mesa core (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: mesa-dev
QA Contact: mesa-dev
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-02-07 23:45 UTC by James Legg
Modified: 2015-02-08 01:02 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Patch (1.09 KB, text/plain)
2015-02-07 23:45 UTC, James Legg
Details
Reproducer (2.19 KB, text/plain)
2015-02-07 23:46 UTC, James Legg
Details
Apitrace trace from reproducer (46.79 KB, application/octet-stream)
2015-02-07 23:48 UTC, James Legg
Details

Note You need to log in before you can comment on or make changes to this bug.
Description James Legg 2015-02-07 23:45:56 UTC
Created attachment 113255 [details]
Patch

When binding a layered texture to a framebuffer, the framebuffer is marked as layered. When a renderbuffer is bound to the same attachment point, it replaces the texture, but mesa doesn't clear the layered state. When checking for framebuffer completeness, the left over layered state is used, even though renderbuffers don't have layered state. This can result in framebuffer incompleteness with GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS when there are no layered attachment points.

This occurs on the 10.4 branch at 54da987baec25fbaf6975c93f197ddbfe65a303c and the master branch at 49299ef6fa0cf88e7101512400a4e74efa300941.
Comment 1 James Legg 2015-02-07 23:46:59 UTC
Created attachment 113256 [details]
Reproducer
Comment 2 James Legg 2015-02-07 23:48:45 UTC
Created attachment 113257 [details]
Apitrace trace from reproducer
Comment 3 Chris Forbes 2015-02-08 01:02:33 UTC
James,

I've confirmed that your patch fixes the test case provided, and push it to master.

- Chris


bug/show.html.tmpl processed on Mar 25, 2017 at 09:35:17.
(provided by the Example extension).