aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/evas/canvas/evas_clip.c
diff options
context:
space:
mode:
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>2013-09-25 13:05:41 +0900
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>2013-09-25 13:05:41 +0900
commitb5472db51d4dcefecf50c5d98956b87f6f652492 (patch)
tree681098ca406fcd9c874147402f6a5752e0f28045 /src/lib/evas/canvas/evas_clip.c
parenteo: rename _Eo_Internal -> _Eo_Object (diff)
downloadefl-b5472db51d4dcefecf50c5d98956b87f6f652492.tar.gz
fix if obj->layer is null during shutdown
Diffstat (limited to 'src/lib/evas/canvas/evas_clip.c')
-rw-r--r--src/lib/evas/canvas/evas_clip.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/lib/evas/canvas/evas_clip.c b/src/lib/evas/canvas/evas_clip.c
index 70134ebb65..76cddc0301 100644
--- a/src/lib/evas/canvas/evas_clip.c
+++ b/src/lib/evas/canvas/evas_clip.c
@@ -390,14 +390,17 @@ _clip_unset(Eo *eo_obj, void *_pd, va_list *list EINA_UNUSED)
}
EINA_COW_STATE_WRITE_END(obj->cur->clipper, state_write, cur);
- if (obj->cur->clipper->cur->visible)
+ if ((obj->cur->clipper->cur) && (obj->cur->clipper->cur->visible))
{
- Evas_Public_Data *e = obj->cur->clipper->layer->evas;
- evas_damage_rectangle_add(e->evas,
- obj->cur->clipper->cur->geometry.x + e->framespace.x,
- obj->cur->clipper->cur->geometry.y + e->framespace.y,
- obj->cur->clipper->cur->geometry.w,
- obj->cur->clipper->cur->geometry.h);
+ if (obj->cur->clipper->layer)
+ {
+ Evas_Public_Data *e = obj->cur->clipper->layer->evas;
+ evas_damage_rectangle_add(e->evas,
+ obj->cur->clipper->cur->geometry.x + e->framespace.x,
+ obj->cur->clipper->cur->geometry.y + e->framespace.y,
+ obj->cur->clipper->cur->geometry.w,
+ obj->cur->clipper->cur->geometry.h);
+ }
}
}
evas_object_change(obj->cur->clipper->object, obj->cur->clipper);