Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Leung <aligorith@gmail.com>2008-12-14 12:11:31 +0300
committerJoshua Leung <aligorith@gmail.com>2008-12-14 12:11:31 +0300
commit93f3eaafea1a3099b9e067ad6803aa57139f9ee1 (patch)
tree4bead0c1c430ce09752daa28d757f43a5213da11 /source/blender/blenkernel/intern/screen.c
parentffc0089b7b8a9d067ce96c0d0ccde8f85fefb736 (diff)
2.5 - Fixed crashes when merging areas
Diffstat (limited to 'source/blender/blenkernel/intern/screen.c')
-rw-r--r--source/blender/blenkernel/intern/screen.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/source/blender/blenkernel/intern/screen.c b/source/blender/blenkernel/intern/screen.c
index 2831f45195e..c7379f61870 100644
--- a/source/blender/blenkernel/intern/screen.c
+++ b/source/blender/blenkernel/intern/screen.c
@@ -135,17 +135,19 @@ void BKE_spacedata_copylist(ListBase *lb1, ListBase *lb2)
/* not region itself */
void BKE_area_region_free(ARegion *ar)
{
- if(ar->type && ar->type->free)
+ if(ar && ar->type && ar->type->free)
ar->type->free(ar);
}
/* not area itself */
void BKE_screen_area_free(ScrArea *sa)
{
- ARegion *ar;
+ ARegion *ar, *arn;
- for(ar=sa->regionbase.first; ar; ar=ar->next)
+ for(ar=sa->regionbase.first; ar; ar=arn) {
+ arn= ar->next;
BKE_area_region_free(ar);
+ }
BKE_spacedata_freelist(&sa->spacedata);