Changeset View
Changeset View
Standalone View
Standalone View
source/blender/blenkernel/intern/image.c
| Show First 20 Lines • Show All 3,580 Lines • ▼ Show 20 Lines | if (rv != NULL) { | ||||
| rectf = rv->rectf; | rectf = rv->rectf; | ||||
| rectz = rv->rectz; | rectz = rv->rectz; | ||||
| } | } | ||||
| else { | else { | ||||
| /* XXX This should never happen, yet it does - T44498 | /* XXX This should never happen, yet it does - T44498 | ||||
| * I'm waiting to investigate more, but meanwhile this fix | * I'm waiting to investigate more, but meanwhile this fix | ||||
| * the immediate issue */ | * the immediate issue */ | ||||
| rect = NULL; | rect = NULL; | ||||
| rectf = NULL; | |||||
| rectz = NULL; | |||||
| } | } | ||||
| dither = iuser->scene->r.dither_intensity; | dither = iuser->scene->r.dither_intensity; | ||||
| /* combined layer gets added as first layer */ | /* combined layer gets added as first layer */ | ||||
| if (rres.have_combined && layer == 0) { | if (rres.have_combined && layer == 0) { | ||||
| /* pass */ | /* pass */ | ||||
| } | } | ||||
| else if (rect && layer == 0) { | else if (rect && layer == 0) { | ||||
| ▲ Show 20 Lines • Show All 55 Lines • ▼ Show 20 Lines | if (ibuf->rect != rect) { | ||||
| else { | else { | ||||
| const char *colorspace = IMB_colormanagement_role_colorspace_name_get(COLOR_ROLE_DEFAULT_BYTE); | const char *colorspace = IMB_colormanagement_role_colorspace_name_get(COLOR_ROLE_DEFAULT_BYTE); | ||||
| IMB_colormanagement_assign_rect_colorspace(ibuf, colorspace); | IMB_colormanagement_assign_rect_colorspace(ibuf, colorspace); | ||||
| } | } | ||||
| } | } | ||||
| /* invalidate color managed buffers if render result changed */ | /* invalidate color managed buffers if render result changed */ | ||||
| BLI_lock_thread(LOCK_COLORMANAGE); | BLI_lock_thread(LOCK_COLORMANAGE); | ||||
| if (ibuf->x != rres.rectx || ibuf->y != rres.recty || ibuf->rect_float != rectf) { | if (ibuf->x != rres.rectx || ibuf->y != rres.recty || (rectf && ibuf->rect_float != rectf)) { | ||||
| ibuf->userflags |= IB_DISPLAY_BUFFER_INVALID; | ibuf->userflags |= IB_DISPLAY_BUFFER_INVALID; | ||||
| } | } | ||||
| ibuf->x = rres.rectx; | ibuf->x = rres.rectx; | ||||
| ibuf->y = rres.recty; | ibuf->y = rres.recty; | ||||
| if (rect) { | if (rect) { | ||||
| imb_freerectImBuf(ibuf); | imb_freerectImBuf(ibuf); | ||||
| ▲ Show 20 Lines • Show All 913 Lines • Show Last 20 Lines | |||||