raster pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=d639063b507b3339095edb3c0b685c03b1b293fd

commit d639063b507b3339095edb3c0b685c03b1b293fd
Author: Carsten Haitzler (Rasterman) <[email protected]>
Date:   Mon Jul 31 12:00:45 2017 +0900

    elm code - handle alloc failure for line split
    
    this culd optentially use large offsets before accessing the ptr thus
    it may not segv inthe first page but actually work if positionoffsets
    are large enouh, so handle this case explicitly.
    
    @fix
    
    found by PVS studio
---
 src/lib/elementary/elm_code_line.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/lib/elementary/elm_code_line.c 
b/src/lib/elementary/elm_code_line.c
index e27cb5d74d..3d5cc2f7be 100644
--- a/src/lib/elementary/elm_code_line.c
+++ b/src/lib/elementary/elm_code_line.c
@@ -68,8 +68,10 @@ EAPI void elm_code_line_split_at(Elm_Code_Line *line, 
unsigned int position)
    char *content;
    unsigned int length;
 
-   content = (char *) elm_code_line_text_get(line, &length);
-   content = strndup(content, length);
+   content = (char *) elm_code_line_text_get(line, &length); 
+   if (!content) return;
+  content = strndup(content, length);
+   if (!content) return;
    elm_code_file_line_insert(line->file, line->number + 1, "", 0, NULL);
    newline = elm_code_file_line_get(line->file, line->number + 1);
 

-- 


Reply via email to