From e2d223461efeea4792defb254c692828266478d1 Mon Sep 17 00:00:00 2001 From: Joshua Leung Date: Mon, 28 Nov 2016 02:28:12 +1300 Subject: 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. --- source/blender/blenkernel/intern/gpencil.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'source/blender/blenkernel/intern/gpencil.c') diff --git a/source/blender/blenkernel/intern/gpencil.c b/source/blender/blenkernel/intern/gpencil.c index 2242113b79b..c22fd0e5a3c 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); } -- cgit v1.2.3