Commit: 6f83bc24b58ef4a8be896d8a7efb9239c11cdec3
Author: Antonio Vazquez
Date:   Tue Mar 13 13:06:25 2018 +0100
Branches: greasepencil-object
https://developer.blender.org/rB6f83bc24b58ef4a8be896d8a7efb9239c11cdec3

Fix problem when change mode in brush color default

===================================================================

M       source/blender/draw/engines/gpencil/gpencil_draw_cache_impl.c

===================================================================

diff --git a/source/blender/draw/engines/gpencil/gpencil_draw_cache_impl.c 
b/source/blender/draw/engines/gpencil/gpencil_draw_cache_impl.c
index 0aa01ca3b15..bd22260b7a4 100644
--- a/source/blender/draw/engines/gpencil/gpencil_draw_cache_impl.c
+++ b/source/blender/draw/engines/gpencil/gpencil_draw_cache_impl.c
@@ -859,10 +859,16 @@ void DRW_gpencil_populate_buffer_strokes(GPENCIL_e_data 
*e_data, void *vedata, T
        GPENCIL_StorageList *stl = ((GPENCIL_Data *)vedata)->stl;
        Brush *brush = BKE_brush_getactive_gpencil(ts);
        bGPdata *gpd = ob->data;
+       PaletteColor *palcolor = NULL;
+
        float obscale = (ob->size[0] + ob->size[1] + ob->size[2]) / 3.0f;
 
-       bGPDpaletteref *palslot = BKE_gpencil_paletteslot_get_active(gpd);
-       PaletteColor *palcolor = BKE_palette_color_get_active((palslot) ? 
palslot->palette : NULL);
+       /* if the brush has a palette and color defined, use these and not 
current defaults */
+       palcolor = BKE_gpencil_get_color_from_brush(gpd, brush);
+       if (palcolor == NULL) {
+               bGPDpaletteref *palslot = 
BKE_gpencil_paletteslot_get_active(gpd);
+               palcolor = BKE_palette_color_get_active((palslot) ? 
palslot->palette : NULL);
+       }
        
        /* drawing strokes */
        /* Check if may need to draw the active stroke cache, only if this 
layer is the active layer

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to