diff options
author | Jordan Justen <[email protected]> | 2018-02-14 23:42:50 -0800 |
---|---|---|
committer | Jordan Justen <[email protected]> | 2018-02-23 10:51:40 -0800 |
commit | 719f2c934030f74ce0a4892233f494f168852698 (patch) | |
tree | 188c4d29ed2fa36cfa197fead65a2983c993fd23 /src | |
parent | 1e1734634bf2e5f6d16953dbf416cd9afdf4a145 (diff) |
i965: Support 0 ARB_get_program_binary formats for compat profiles
The QT framework has a bug in their shader program cache, which is
built on GL_ARB_get_program_binary.
To give QT and distributions time to fix the bug and roll the fix out
to users, for the 18.0 release we will advertise support for 0 binary
formats for compatibility profiles.
This is only being done on the 18.0 release branch.
Ref: https://bugreports.qt.io/browse/QTBUG-66420
Ref: https://bugs.freedesktop.org/show_bug.cgi?id=105065
Cc: "18.0" <[email protected]>
Signed-off-by: Jordan Justen <[email protected]>
Tested-by: Scott D Phillips <[email protected]>
Reviewed-by: Scott D Phillips <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_context.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_context.c b/src/mesa/drivers/dri/i965/brw_context.c index e9358b7bc9c..58527d77263 100644 --- a/src/mesa/drivers/dri/i965/brw_context.c +++ b/src/mesa/drivers/dri/i965/brw_context.c @@ -704,7 +704,14 @@ brw_initialize_context_constants(struct brw_context *brw) ctx->Const.AllowMappedBuffersDuringExecution = true; /* GL_ARB_get_program_binary */ - ctx->Const.NumProgramBinaryFormats = 1; + /* The QT framework has a bug in their shader program cache, which is built + * on GL_ARB_get_program_binary. In an effort to allow them to fix the bug + * we don't enable more than 1 binary format for compatibility profiles. + * This is only being done on the 18.0 release branch. + */ + if (ctx->API != API_OPENGL_COMPAT) { + ctx->Const.NumProgramBinaryFormats = 1; + } } static void |