Fix opengl render preview in image editor broken
During multiview, invalidation of the display imbuf of the preview image was eaten by code eating elves.
This commit is contained in:
@@ -493,6 +493,8 @@ static void screen_opengl_render_apply(OGLRender *oglrender)
|
|||||||
RenderResult *rr;
|
RenderResult *rr;
|
||||||
RenderView *rv;
|
RenderView *rv;
|
||||||
int view_id;
|
int view_id;
|
||||||
|
ImBuf *ibuf;
|
||||||
|
void *lock;
|
||||||
|
|
||||||
rr = RE_AcquireResultRead(oglrender->re);
|
rr = RE_AcquireResultRead(oglrender->re);
|
||||||
for (rv = rr->views.first, view_id = 0; rv; rv = rv->next, view_id++) {
|
for (rv = rr->views.first, view_id = 0; rv; rv = rv->next, view_id++) {
|
||||||
@@ -503,6 +505,12 @@ static void screen_opengl_render_apply(OGLRender *oglrender)
|
|||||||
|
|
||||||
RE_ReleaseResult(oglrender->re);
|
RE_ReleaseResult(oglrender->re);
|
||||||
|
|
||||||
|
ibuf = BKE_image_acquire_ibuf(oglrender->ima, &oglrender->iuser, &lock);
|
||||||
|
if (ibuf) {
|
||||||
|
ibuf->userflags |= IB_DISPLAY_BUFFER_INVALID;
|
||||||
|
}
|
||||||
|
BKE_image_release_ibuf(oglrender->ima, ibuf, lock);
|
||||||
|
|
||||||
if (oglrender->write_still) {
|
if (oglrender->write_still) {
|
||||||
screen_opengl_render_write(oglrender);
|
screen_opengl_render_write(oglrender);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user