[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [25483] trunk/blender/source/blender/ blenloader/intern/readfile.c: Fix do_version for new preview region ( for real this time).
Martin Poirier
theeth at yahoo.com
Sun Dec 20 16:23:29 CET 2009
Revision: 25483
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=25483
Author: theeth
Date: 2009-12-20 16:23:29 +0100 (Sun, 20 Dec 2009)
Log Message:
-----------
Fix do_version for new preview region (for real this time).
First spacedata has empty region base and uses the one in ScrArea. Need to account for that.
Modified Paths:
--------------
trunk/blender/source/blender/blenloader/intern/readfile.c
Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c 2009-12-20 11:04:11 UTC (rev 25482)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c 2009-12-20 15:23:29 UTC (rev 25483)
@@ -10225,8 +10225,16 @@
for(sl= sa->spacedata.first; sl; sl= sl->next) {
if(sl->spacetype!=SPACE_SEQ) {
ARegion *ar;
+ ListBase *regionbase;
- for( ar = sl->regionbase.first; ar; ar = ar->next) {
+ if (sl == sa->spacedata.first) {
+ regionbase = &sa->regionbase;
+ } else {
+ regionbase = &sl->regionbase;
+ }
+
+
+ for( ar = regionbase->first; ar; ar = ar->next) {
if (ar->regiontype == RGN_TYPE_PREVIEW)
break;
}
@@ -10234,24 +10242,10 @@
if (ar) {
SpaceType *st= BKE_spacetype_from_id(SPACE_SEQ);
BKE_area_region_free(st, ar);
- BLI_freelinkN(&sl->regionbase, ar);
+ BLI_freelinkN(regionbase, ar);
}
}
}
- if(sa->spacetype!=SPACE_SEQ) {
- ARegion *ar;
-
- for( ar = sa->regionbase.first; ar; ar = ar->next) {
- if (ar->regiontype == RGN_TYPE_PREVIEW)
- break;
- }
-
- if (ar) {
- SpaceType *st= BKE_spacetype_from_id(SPACE_SEQ);
- BKE_area_region_free(st, ar);
- BLI_freelinkN(&sa->regionbase, ar);
- }
- }
}
}
}
@@ -10271,19 +10265,25 @@
if(sl->spacetype==SPACE_SEQ) {
ARegion *ar;
ARegion *ar_main;
- ListBase *lb = &sl->regionbase;
+ ListBase *regionbase;
SpaceSeq *sseq = (SpaceSeq *)sl;
+ if (sl == sa->spacedata.first) {
+ regionbase = &sa->regionbase;
+ } else {
+ regionbase = &sl->regionbase;
+ }
+
if (sseq->view == 0) sseq->view = SEQ_VIEW_SEQUENCE;
if (sseq->mainb == 0) sseq->mainb = SEQ_DRAW_IMG_IMBUF;
- ar_main = (ARegion*)lb->first;
+ ar_main = (ARegion*)regionbase->first;
for (; ar_main; ar_main = ar_main->next) {
if (ar_main->regiontype == RGN_TYPE_WINDOW)
break;
}
ar= MEM_callocN(sizeof(ARegion), "preview area for sequencer");
- BLI_insertlinkbefore(lb, ar_main, ar);
+ BLI_insertlinkbefore(regionbase, ar_main, ar);
ar->regiontype= RGN_TYPE_PREVIEW;
ar->alignment= RGN_ALIGN_TOP;
ar->flag |= RGN_FLAG_HIDDEN;
More information about the Bf-blender-cvs
mailing list