mesa/blit: Don't require the same format for mulitisample blits
authorNeil Roberts <neil@linux.intel.com>
Wed, 4 Nov 2015 14:52:07 +0000 (15:52 +0100)
committerNeil Roberts <neil@linux.intel.com>
Wed, 16 Dec 2015 16:20:36 +0000 (16:20 +0000)
commit4c7c9e4602b6ff72eb2ef41be4ba780d44d37440
tree10bd45a9484cde42eb38266fb99d336272636794
parent89eb342defb294400643759f2deb456a33b95e8f
mesa/blit: Don't require the same format for mulitisample blits

Previously the GL spec required that whenever glBlitFramebuffer is
used with either buffer being multisampled, the internal formats must
match. However the GL 4.4 spec was later changed to remove this
restriction. In the section entitled “Changes in the released
Specification of July 22, 2013” it says:

“Relax BlitFramebuffer in section 18.3.1 so that format conversion can
 take place during multisample blits, since drivers already allow this
 and some apps depend on it.”

If most drivers already allowed this in earlier versions I think it's
safe to assume that this is a spec bug and it should also be allowed
in all versions.

This patch just removes the restriction on desktop GL. For GLES there
are conformance tests that assert the previous behaviour so it is
probably safer to leave it in.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92706
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
src/mesa/main/blit.c