diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2018-12-02 03:57:22 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2018-12-02 03:57:30 +0300 |
commit | 40d0374411e28f8d1409303743e71b8b6b8aab2c (patch) | |
tree | 19decde9ea31386e510196a89c91eb1bcd86967b /source/blender/editors/screen | |
parent | 8c620c8e2b3bf1f154f5d04e31e056bfc66d28df (diff) |
Fix T57455: Laggy, freezing UI with Linux and Intel UHD 620
Seems like a driver bug but doing glFlush() before these calls fixes it.
Diffstat (limited to 'source/blender/editors/screen')
-rw-r--r-- | source/blender/editors/screen/screen_draw.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/editors/screen/screen_draw.c b/source/blender/editors/screen/screen_draw.c index 51301b0f022..0068fe4dcf5 100644 --- a/source/blender/editors/screen/screen_draw.c +++ b/source/blender/editors/screen/screen_draw.c @@ -387,6 +387,12 @@ void ED_screen_draw_edges(wmWindow *win) BLI_rcti_do_minmax_v(&scissor_rect, (int[2]){sa->v3->vec.x, sa->v3->vec.y}); } + if (GPU_type_matches(GPU_DEVICE_INTEL_UHD, GPU_OS_UNIX, GPU_OS_ANY)) { + /* For some reason, on linux + Intel UHD Graphics 620 the driver + * hangs if we don't flush before this. (See T57455) */ + glFlush(); + } + GPU_scissor(scissor_rect.xmin, scissor_rect.ymin, BLI_rcti_size_x(&scissor_rect) + 1, |