mesa: Add error checking in _mesa_BlitFramebuffer() for MRTs
authorAnuj Phogat <anuj.phogat@gmail.com>
Wed, 12 Dec 2012 04:17:47 +0000 (20:17 -0800)
committerIan Romanick <ian.d.romanick@intel.com>
Tue, 15 Jan 2013 23:09:12 +0000 (15:09 -0800)
commitab36ca061412c49143a5f2af53bee862fbd40351
treef152c20bbb8b3efacea96be4293273ef3346148e
parent2f2801f876a4c637273bd3ddefb8a5b7a840e604
mesa: Add error checking in _mesa_BlitFramebuffer() for MRTs

This patch adds required error checking in _mesa_BlitFramebuffer() when
blitting to multiple color render targets. It also fixes a case when
blitting to a framebuffer with renderbuffer/texture attached to
GL_COLOR_ATTACHMENT{i} (where i!=0). Earlier it skips color blitting if
nothing is found attached to GL_COLOR_ATTACHMENT0.

V2: Fixed a case when number of draw buffer attachments are zero.
V3: Do compatible_color_datatypes() and compatible_resolve_formats()
    check for all the draw renderbuffers in fbobject.c. Fix debug code
    at bottom of _mesa_BlitFramebuffer() to handle MRTs. Combine error
    checking code for linear blits with other color blit error checking.

Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
src/mesa/main/fbobject.c