Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Ebb <matt@mke3.net>2010-01-09 03:16:35 +0300
committerMatt Ebb <matt@mke3.net>2010-01-09 03:16:35 +0300
commit04dec46c6a252a401a23c06ece2552f64cfc5892 (patch)
treed481504bf0db87f68869f1ffe23c61b7bf20b62c /source/blender/editors/sculpt_paint
parente62e66fe8af97cb02ae69d6745bc7cc2daa6cb22 (diff)
Color management fixes
Now it's a bit more robust, tagging images with profiles when they're loaded, which then get interpreted later on by conversion functions. Just Linear RGB and sRGB profiles at the moment, same as before. This commit fixes Martin's problem with EXRs and Multilayer images loading/ saving too dark, and it also makes the sequence editor work correctly with it too. Also fixes: [#19647] gamma correction with color management is reset when resetting Curve [#19454] 2.5: Dither does not work when Color management is enabled
Diffstat (limited to 'source/blender/editors/sculpt_paint')
-rw-r--r--source/blender/editors/sculpt_paint/paint_image.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/source/blender/editors/sculpt_paint/paint_image.c b/source/blender/editors/sculpt_paint/paint_image.c
index 2c80a7095e2..77e90e3c7b1 100644
--- a/source/blender/editors/sculpt_paint/paint_image.c
+++ b/source/blender/editors/sculpt_paint/paint_image.c
@@ -4081,10 +4081,17 @@ static int imapaint_canvas_set(ImagePaintState *s, Image *ima)
s->clonecanvas= ibuf;
+ /* temporarily add float rect for cloning */
if(s->canvas->rect_float && !s->clonecanvas->rect_float) {
- /* temporarily add float rect for cloning */
+ int profile = IB_PROFILE_NONE;
+
+ /* Don't want to color manage, but don't disturb existing profiles */
+ SWAP(int, s->clonecanvas->profile, profile);
+
IMB_float_from_rect(s->clonecanvas);
s->clonefreefloat= 1;
+
+ SWAP(int, s->clonecanvas->profile, profile);
}
else if(!s->canvas->rect_float && !s->clonecanvas->rect)
IMB_rect_from_float(s->clonecanvas);