evas/evas_font - added exeption handlings.
authorhermet <hermet@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sun, 21 Aug 2011 12:47:11 +0000 (12:47 +0000)
committerhermet <hermet@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Sun, 21 Aug 2011 12:47:11 +0000 (12:47 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@62659 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/engines/common/evas_font_default_walk.x

index 56807b8..043e50b 100644 (file)
 /*FIXME: doc */
 #ifdef OT_SUPPORT
 # define EVAS_FONT_WALK_X_OFF \
-             (EVAS_FONT_ROUND_26_6_TO_INT(EVAS_FONT_OT_X_OFF_GET(*_ot_itr)))
+             ((_ot_itr) ? \
+              (EVAS_FONT_ROUND_26_6_TO_INT(EVAS_FONT_OT_X_OFF_GET(*_ot_itr)) : \
+              0)
 # define EVAS_FONT_WALK_Y_OFF \
-             (EVAS_FONT_ROUND_26_6_TO_INT(EVAS_FONT_OT_Y_OFF_GET(*_ot_itr)))
+             ((_ot_itr) ? \
+              (EVAS_FONT_ROUND_26_6_TO_INT(EVAS_FONT_OT_Y_OFF_GET(*_ot_itr)) : \
+              0)
 # define EVAS_FONT_WALK_POS \
-             (EVAS_FONT_OT_POS_GET(*_ot_itr) - text_props->text_offset)
+             ((_ot_itr) ? \
+              (EVAS_FONT_OT_POS_GET(*_ot_itr) - text_props->text_offset) : \
+              0)
 # define EVAS_FONT_WALK_POS_NEXT \
               ((!EVAS_FONT_WALK_IS_LAST) ? \
-               EVAS_FONT_OT_POS_GET(*(_ot_itr + 1)) - \
-                text_props->text_offset : \
+               ((_ot_itr) ? EVAS_FONT_OT_POS_GET(*(_ot_itr + 1)) : 0) - text_props->text_offset : \
                EVAS_FONT_WALK_POS \
               )
 # define EVAS_FONT_WALK_POS_PREV \
              ((char_index > 0) ? \
-             EVAS_FONT_OT_POS_GET(*(_ot_itr - 1)) - \
-              text_props->text_offset : \
+              ((_ot_itr) ? EVAS_FONT_OT_POS_GET(*(_ot_itr - 1)) : 0) - text_props->text_offset : \
               EVAS_FONT_WALK_POS \
              )
 #else