mesa: fix error handling in DrawBuffers
authorTapani Pälli <tapani.palli@intel.com>
Fri, 7 Oct 2016 07:08:21 +0000 (10:08 +0300)
committerTapani Pälli <tapani.palli@intel.com>
Tue, 25 Oct 2016 05:04:11 +0000 (08:04 +0300)
commita1652a059edc5a5f0f4b0836ba310a22e094bd85
treea85606d0c1e86bc37ae08d0fd29345c05c4211f5
parent5876f3c85a61d73bb4863331bd641152a40a7b0c
mesa: fix error handling in DrawBuffers

Patch rearranges error checking so that enum checking provided via
destmask happens before other checks. It needs to be done in this
order because other error checks do not work properly if there were
invalid enums passed.

Patch also refines one existing check and it's documentation to match
GLES 3.0 spec (also in later specs). This was somewhat mysteriously
referring to desktop GL but had a check for gles3.

Fixes following dEQP tests:

   dEQP-GLES31.functional.debug.negative_coverage.get_error.buffer.draw_buffers

no CI regressions observed.

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98134
Cc: "12.0 13.0" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
src/mesa/main/buffers.c