[gimp/gimp-2-8] Fix PF_LAYER always being passed as a Layer, even if object is a LayerGroup



commit ae3d1f9c2fb3256498576b31593c454b04dbb0cf
Author: Joao S. O. Bueno <gwidion gmail com>
Date:   Tue Feb 10 11:55:30 2015 -0200

    Fix PF_LAYER always being passed as a Layer, even if object is a LayerGroup

 plug-ins/pygimp/pygimp-drawable.c |   14 ++++++++++----
 1 files changed, 10 insertions(+), 4 deletions(-)
---
diff --git a/plug-ins/pygimp/pygimp-drawable.c b/plug-ins/pygimp/pygimp-drawable.c
index 69e1046..80c3ba4 100644
--- a/plug-ins/pygimp/pygimp-drawable.c
+++ b/plug-ins/pygimp/pygimp-drawable.c
@@ -1905,14 +1905,20 @@ pygimp_layer_new(gint32 ID)
     PyGimpLayer *self;
 
     if (!gimp_item_is_valid(ID) || !gimp_item_is_layer(ID)) {
-       Py_INCREF(Py_None);
-       return Py_None;
+        Py_INCREF(Py_None);
+        return Py_None;
     }
 
-    self = PyObject_NEW(PyGimpLayer, &PyGimpLayer_Type);
+
+    if (gimp_item_is_group(ID)) {
+        self = PyObject_NEW(PyGimpGroupLayer, &PyGimpGroupLayer_Type);
+    }
+    else {
+        self = PyObject_NEW(PyGimpLayer, &PyGimpLayer_Type);
+    }
 
     if (self == NULL)
-       return NULL;
+        return NULL;
 
     self->ID = ID;
     self->drawable = NULL;


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