diff options
author | Jean-Philippe Andre <jp.andre@samsung.com> | 2014-05-14 17:47:53 +0900 |
---|---|---|
committer | Jean-Philippe Andre <jp.andre@samsung.com> | 2014-05-14 18:42:05 +0900 |
commit | f731f8ffb4294924516d714f122a96da6fa4cb5a (patch) | |
tree | 7966f9ce38e7d8af68629f4ddcea45a52f77d7b8 | |
parent | 2a5b3e24825efd31ca2e9d9a2040cff25b679b71 (diff) | |
download | efl-f731f8ffb4294924516d714f122a96da6fa4cb5a.tar.gz |
Evas filters: Fix NULL dereference (legacy_strdup)
CID 1210809
CID 1210813
+ remove comment
-rw-r--r-- | src/lib/evas/filters/evas_filter_parser.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/lib/evas/filters/evas_filter_parser.c b/src/lib/evas/filters/evas_filter_parser.c index b51f2bec8a..33bb181161 100644 --- a/src/lib/evas/filters/evas_filter_parser.c +++ b/src/lib/evas/filters/evas_filter_parser.c @@ -18,8 +18,6 @@ #define EVAS_FILTER_MODE_GROW (EVAS_FILTER_MODE_LAST+1) #define EVAS_FILTER_MODE_BUFFER (EVAS_FILTER_MODE_LAST+2) -// FIXME: The documentation must be updated to respect the Lua language - /* Note on the documentation: * To keep it simple, I'm not using any fancy features, only <ul>/<li> lists * and @a, @b, @c flags from Doxygen. @@ -1936,13 +1934,17 @@ _legacy_strdup(const char *str) for (const char *ptr = str; ptr && *ptr; ptr++) { if (ptr[0] == '/' && ptr[1] == '/') - // Comments - ptr = strchr(ptr, '\n'); + { + // Comments + ptr = strchr(ptr, '\n'); + if (!ptr) break; + } else if (ptr[0] == '/' && ptr[1] == '*') { /* Comments */ ptr = strstr(ptr + 2, "*/"); - if (ptr) ptr++; + if (!ptr) break; + ptr++; } else if (*ptr == '(') eina_strbuf_append_char(dst, '{'); |