[Bf-blender-cvs] [e2d2234] master: Fix T50123 - GreasePencil: Modifying name of new color in new palette via bpy segfaults
Joshua Leung
noreply at git.blender.org
Sun Nov 27 14:34:57 CET 2016
Commit: e2d223461efeea4792defb254c692828266478d1
Author: Joshua Leung
Date: Mon Nov 28 02:28:12 2016 +1300
Branches: master
https://developer.blender.org/rBe2d223461efeea4792defb254c692828266478d1
Fix T50123 - GreasePencil: Modifying name of new color in new palette via bpy segfaults
When there were no prior palettes, creating a new one didn't automatically make it active.
This caused problems when trying to rename the color, as the RNA code assumed that if there's
a color, it must come from the active palette.
This commit partially fixes the problem by ensuring that if there are no palettes, the first
one will always be made active.
===================================================================
M source/blender/blenkernel/intern/gpencil.c
===================================================================
diff --git a/source/blender/blenkernel/intern/gpencil.c b/source/blender/blenkernel/intern/gpencil.c
index 2242113..c22fd0e 100644
--- a/source/blender/blenkernel/intern/gpencil.c
+++ b/source/blender/blenkernel/intern/gpencil.c
@@ -382,7 +382,8 @@ bGPDpalette *BKE_gpencil_palette_addnew(bGPdata *gpd, const char *name, bool set
sizeof(palette->info));
/* make this one the active one */
- if (setactive) {
+ /* NOTE: Always make this active if there's nothing else yet (T50123) */
+ if ((setactive) || (gpd->palettes.first == gpd->palettes.last)) {
BKE_gpencil_palette_setactive(gpd, palette);
}
More information about the Bf-blender-cvs
mailing list