[gimp] Issue #3893 - Error message when exporting to to TIF if there is a layer mask on a group



commit 643279bd319d80188ee7595a1e68e9dad3c30b61
Author: Ell <ell_se yahoo com>
Date:   Sat Sep 7 10:24:51 2019 +0300

    Issue #3893 - Error message when exporting to to TIF if there is a layer mask on a group
    
    When exporting to a format that supports layers, but doesn't
    support layer masks, merge layer groups with a mask before applying
    their mask, since masks can't be applied to layer groups.

 libgimp/gimpexport.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)
---
diff --git a/libgimp/gimpexport.c b/libgimp/gimpexport.c
index 266b828133..ca6712e0b7 100644
--- a/libgimp/gimpexport.c
+++ b/libgimp/gimpexport.c
@@ -193,8 +193,17 @@ export_apply_masks (GimpImage     *image,
       GimpLayerMask *mask;
 
       mask = gimp_layer_get_mask (iter->data);
+
       if (mask)
-        gimp_layer_remove_mask (iter->data, GIMP_MASK_APPLY);
+        {
+          /* we can't apply the mask directly to a layer group, so merge it
+           * first
+           */
+          if (gimp_item_is_group (iter->data))
+            iter->data = gimp_image_merge_layer_group (image, iter->data);
+
+          gimp_layer_remove_mask (iter->data, GIMP_MASK_APPLY);
+        }
     }
 
   g_list_free (layers);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]