prevent macro null derefs
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Fri, 14 Jan 2011 06:46:04 +0000 (06:46 +0000)
committerMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Fri, 14 Jan 2011 06:46:04 +0000 (06:46 +0000)
SVN revision: 56102

legacy/evas/src/lib/canvas/evas_object_textblock.c

index c79291b..00f4b48 100644 (file)
@@ -208,7 +208,7 @@ typedef struct _Evas_Object_Textblock_Format      Evas_Object_Textblock_Format;
  * the current char pointed to and decrements ind but ensures it stays in
  * the text range.
  */
-#define GET_PREV(text, ind) (((ind) > 0) ? (text[(ind)--]) : (text[ind]))
+#define GET_PREV(text, ind) (text ? (((ind) > 0) ? (text[(ind)--]) : (text[ind])) : 0)
 /**
  * @internal
  * @def GET_NEXT(text, ind)
@@ -216,7 +216,7 @@ typedef struct _Evas_Object_Textblock_Format      Evas_Object_Textblock_Format;
  * the current char pointed to and increments indd but ensures it stays in
  * the text range.
  */
-#define GET_NEXT(text, ind) ((text[ind]) ? (text[(ind)++]) : (text[ind]))
+#define GET_NEXT(text, ind) (text ? ((text[ind]) ? (text[(ind)++]) : (text[ind])) : 0)
 
 /*FIXME: document the structs and struct items. */
 struct _Evas_Object_Style_Tag