disable masking support. back to clip rects.
authorraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 2 Jun 2011 10:00:05 +0000 (10:00 +0000)
committerraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 2 Jun 2011 10:00:05 +0000 (10:00 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@59896 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/canvas/evas_clip.c
src/lib/canvas/evas_object_rectangle.c

index 9416b92..7337f4f 100644 (file)
@@ -159,7 +159,7 @@ evas_object_mapped_clip_across_mark(Evas_Object *obj)
 }
 
 /* public functions */
-
+extern const char *o_rect_type;
 
 EAPI void
 evas_object_clip_set(Evas_Object *obj, Evas_Object *clip)
@@ -178,6 +178,8 @@ evas_object_clip_set(Evas_Object *obj, Evas_Object *clip)
    if (obj->cur.clipper == clip) return;
    if (obj == clip) return;
    if (evas_object_intercept_call_clip_set(obj, clip)) return;
+   // illegal to set anything but a rect as a clip
+   if (clip->type != o_rect_type) return;
    if (obj->smart.smart)
      {
        if (obj->smart.smart->smart_class->clip_set)
index 74a3d6e..36678e7 100644 (file)
@@ -4,6 +4,8 @@
 /* private magic number for rectangle objects */
 static const char o_type[] = "rectangle";
 
+const char *o_rect_type = o_type;
+
 /* private struct for rectangle object internal data */
 typedef struct _Evas_Object_Rectangle      Evas_Object_Rectangle;