bugfix, txt_to_buf would crash on an empty text file.
authorCampbell Barton <ideasman42@gmail.com>
Fri, 27 Jun 2008 23:01:33 +0000 (23:01 +0000)
committerCampbell Barton <ideasman42@gmail.com>
Fri, 27 Jun 2008 23:01:33 +0000 (23:01 +0000)
Also checked all other uses of text->lines.first to make sure the assumption isn't made elsewhere.
Added 2 more checks for text->lines.first when converting text buffer to objects.

source/blender/blenkernel/intern/text.c
source/blender/src/editfont.c

index 876547042dcef06c3445545e6d318b93068859d7..53b7bb975a3fac812709970cbbaf7587588dcd3e 100644 (file)
@@ -942,7 +942,8 @@ char *txt_to_buf (Text *text)
        if (!text) return NULL;
        if (!text->curl) return NULL;
        if (!text->sell) return NULL;
-               
+       if (!text->lines.first) return NULL;
+
        linef= text->lines.first;
        charf= 0;
                
index cb245867c8963322c24114f18597f38cdbf1d006..a3b05a008c8d6b3ba851221cb9646319bba3c08a 100644 (file)
@@ -354,7 +354,7 @@ void txt_export_to_object(struct Text *text)
 //     char sdir[FILE_MAXDIR];
 //     char sfile[FILE_MAXFILE];
 
-       if(!text) return;
+       if(!text || !text->lines.first) return;
 
        id = (ID *)text;
 
@@ -429,7 +429,7 @@ void txt_export_to_objects(struct Text *text)
        int linenum = 0;
        float offset[3] = {0.0,0.0,0.0};
 
-       if(!text) return;
+       if(!text || !text->lines.first) return;
 
        id = (ID *)text;