Commit: 9a670a67d25f54f2f70f1056cfa8823f6817fd22 Author: Dalai Felinto Date: Tue Oct 9 12:42:02 2018 +0000 Branches: blender2.8 https://developer.blender.org/rB9a670a67d25f54f2f70f1056cfa8823f6817fd22
Fix for assert when sampling color to non-existent palette =================================================================== M source/blender/blenkernel/BKE_paint.h M source/blender/blenkernel/intern/library.c M source/blender/blenkernel/intern/paint.c =================================================================== diff --git a/source/blender/blenkernel/BKE_paint.h b/source/blender/blenkernel/BKE_paint.h index d2d09609221..3782d26fc1b 100644 --- a/source/blender/blenkernel/BKE_paint.h +++ b/source/blender/blenkernel/BKE_paint.h @@ -104,6 +104,7 @@ void BKE_paint_reset_overlay_invalid(eOverlayControlFlags flag); void BKE_paint_set_overlay_override(enum eOverlayFlags flag); /* palettes */ +void BKE_palette_init(struct Palette *palette); void BKE_palette_free(struct Palette *palette); struct Palette *BKE_palette_add(struct Main *bmain, const char *name); void BKE_palette_copy_data( diff --git a/source/blender/blenkernel/intern/library.c b/source/blender/blenkernel/intern/library.c index a209b2ac1d7..84aa0ed962b 100644 --- a/source/blender/blenkernel/intern/library.c +++ b/source/blender/blenkernel/intern/library.c @@ -1373,6 +1373,9 @@ void BKE_libblock_init_empty(ID *id) /* Should not be needed - animation from lib pre-2.5 is broken anyway. */ BLI_assert(0); break; + case ID_PAL: + BKE_palette_init((Palette *)id); + break; default: BLI_assert(0); /* Should never reach this point... */ } diff --git a/source/blender/blenkernel/intern/paint.c b/source/blender/blenkernel/intern/paint.c index 070f5daa019..545581e65ec 100644 --- a/source/blender/blenkernel/intern/paint.c +++ b/source/blender/blenkernel/intern/paint.c @@ -398,10 +398,6 @@ void BKE_palette_clear(Palette *palette) Palette *BKE_palette_add(Main *bmain, const char *name) { Palette *palette = BKE_id_new(bmain, ID_PAL, name); - - /* enable fake user by default */ - id_fake_user_set(&palette->id); - return palette; } @@ -430,6 +426,12 @@ void BKE_palette_make_local(Main *bmain, Palette *palette, const bool lib_local) BKE_id_make_local_generic(bmain, &palette->id, true, lib_local); } +void BKE_palette_init(Palette *palette) +{ + /* Enable fake user by default. */ + id_fake_user_set(&palette->id); +} + /** Free (or release) any data used by this palette (does not free the palette itself). */ void BKE_palette_free(Palette *palette) { _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs