From b247e19ff10c74c756ec94b3d4f910383190f172 Mon Sep 17 00:00:00 2001 From: Antony Riakiotakis Date: Thu, 18 Sep 2014 12:07:17 +0200 Subject: Palettes * Remove some duplication in deletion code * Fix crash when restoring file from last saved state. --- source/blender/blenkernel/intern/paint.c | 28 +++++++--------------------- 1 file changed, 7 insertions(+), 21 deletions(-) (limited to 'source/blender/blenkernel/intern/paint.c') diff --git a/source/blender/blenkernel/intern/paint.c b/source/blender/blenkernel/intern/paint.c index 296ca09a901..6a3062f10ae 100644 --- a/source/blender/blenkernel/intern/paint.c +++ b/source/blender/blenkernel/intern/paint.c @@ -315,14 +315,13 @@ void BKE_paint_curve_set(Brush *br, PaintCurve *pc) /* remove colour from palette. Must be certain color is inside the palette! */ void BKE_palette_color_remove(Palette *palette, PaletteColor *color) { - int num_items; - BLI_remlink(&palette->colors, color); - - num_items = BLI_countlist(&palette->colors); - - BLI_addhead(&palette->deleted, color); - if (palette->active_color == num_items && num_items > 0) - palette->active_color--; + if (color) { + if ((color == palette->colors.last) && (palette->colors.last != palette->colors.first)) + palette->active_color--; + + BLI_remlink(&palette->colors, color); + BLI_addhead(&palette->deleted, color); + } } void BKE_palette_cleanup(Palette *palette) @@ -356,19 +355,6 @@ PaletteColor *BKE_palette_color_add(Palette *palette) return color; } -void BKE_palette_color_delete(struct Palette *palette) -{ - PaletteColor *color = BLI_findlink(&palette->colors, palette->active_color); - - if (color) { - if ((color == palette->colors.last) && (palette->colors.last != palette->colors.first)) - palette->active_color--; - - BLI_remlink(&palette->colors, color); - BLI_addhead(&palette->deleted, color); - } -} - bool BKE_palette_is_empty(const struct Palette *palette) { -- cgit v1.2.3