[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [25388] trunk/blender/source/blender: Sequencer:

Andrea Weikert elubie at gmx.net
Mon Dec 14 23:59:44 CET 2009


Revision: 25388
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=25388
Author:   elubie
Date:     2009-12-14 23:59:41 +0100 (Mon, 14 Dec 2009)

Log Message:
-----------
Sequencer:
* fix crash due to missing preview region
* had to bump up subversion to catch all files saved without preview region in sequencer.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/BKE_blender.h
    trunk/blender/source/blender/blenloader/intern/readfile.c

Modified: trunk/blender/source/blender/blenkernel/BKE_blender.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_blender.h	2009-12-14 22:29:10 UTC (rev 25387)
+++ trunk/blender/source/blender/blenkernel/BKE_blender.h	2009-12-14 22:59:41 UTC (rev 25388)
@@ -43,7 +43,7 @@
 struct ReportList;
 
 #define BLENDER_VERSION			250
-#define BLENDER_SUBVERSION		9
+#define BLENDER_SUBVERSION		10
 
 #define BLENDER_MINVERSION		250
 #define BLENDER_MINSUBVERSION	0

Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c	2009-12-14 22:29:10 UTC (rev 25387)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c	2009-12-14 22:59:41 UTC (rev 25388)
@@ -5944,7 +5944,8 @@
 static void area_add_window_regions(ScrArea *sa, SpaceLink *sl, ListBase *lb)
 {
 	ARegion *ar;
-	
+	ARegion *ar_main;
+
 	if(sl) {
 		/* first channels for ipo action nla... */
 		switch(sl->spacetype) {
@@ -6004,10 +6005,16 @@
 				ar->alignment= RGN_ALIGN_TOP;
 				break;
 			case SPACE_SEQ:
+				ar_main = (ARegion*)lb->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_addtail(lb, ar);
-				ar->regiontype= RGN_TYPE_UI;
+				BLI_insertlinkbefore(lb, ar_main, ar);
+				ar->regiontype= RGN_TYPE_PREVIEW;
 				ar->alignment= RGN_ALIGN_TOP;
+				ar->flag |= RGN_FLAG_HIDDEN;
 				break;
 			case SPACE_VIEW3D:
 				/* toolbar */
@@ -10159,40 +10166,62 @@
 		}
 	}
 
-	/* put 2.50 compatibility code here until next subversion bump */
+	if (main->versionfile < 250 || (main->versionfile == 250 && main->subversionfile < 10))
 	{
-		Object *ob;
-		
-		/* properly initialise hair clothsim data on old files */
-		for(ob = main->object.first; ob; ob = ob->id.next) {
-			ModifierData *md;
-			for(md= ob->modifiers.first; md; md= md->next) {
-				if (md->type == eModifierType_Cloth) {
-					ClothModifierData *clmd = (ClothModifierData *)md;
-					if (clmd->sim_parms->velocity_smooth < 0.01f)
-						clmd->sim_parms->velocity_smooth = 0.f;
+		{
+			Object *ob;
+			
+			/* properly initialise hair clothsim data on old files */
+			for(ob = main->object.first; ob; ob = ob->id.next) {
+				ModifierData *md;
+				for(md= ob->modifiers.first; md; md= md->next) {
+					if (md->type == eModifierType_Cloth) {
+						ClothModifierData *clmd = (ClothModifierData *)md;
+						if (clmd->sim_parms->velocity_smooth < 0.01f)
+							clmd->sim_parms->velocity_smooth = 0.f;
+					}
 				}
 			}
 		}
-	}
-	{ /* fix for new view type in sequencer */
-		bScreen *screen;
-		ScrArea *sa;
-		SpaceLink *sl;
-		
-		for(screen= main->screen.first; screen; screen= screen->id.next) {
-			for(sa= screen->areabase.first; sa; sa= sa->next) {
-				for(sl= sa->spacedata.first; sl; sl= sl->next) {
-					if(sl->spacetype==SPACE_SEQ) {
-						SpaceSeq *sseq = (SpaceSeq *)sl;
-						if (sseq->view == 0) sseq->view = SEQ_VIEW_SEQUENCE;
-						if (sseq->mainb == 0) sseq->mainb = SEQ_DRAW_IMG_IMBUF;
+		{
+			/* fix for new view type in sequencer */
+			bScreen *screen;
+			ScrArea *sa;
+			SpaceLink *sl;
+			
+
+			for(screen= main->screen.first; screen; screen= screen->id.next) {
+				for(sa= screen->areabase.first; sa; sa= sa->next) {
+					for(sl= sa->spacedata.first; sl; sl= sl->next) {
+						if(sl->spacetype==SPACE_SEQ) {
+							ARegion *ar;
+							ARegion *ar_main;
+							ListBase *lb = &sa->regionbase;
+							SpaceSeq *sseq = (SpaceSeq *)sl;
+
+							if (sseq->view == 0) sseq->view = SEQ_VIEW_SEQUENCE;
+							if (sseq->mainb == 0) sseq->mainb = SEQ_DRAW_IMG_IMBUF;
+							
+							ar_main = (ARegion*)lb->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);
+							ar->regiontype= RGN_TYPE_PREVIEW;
+							ar->alignment= RGN_ALIGN_TOP;
+							ar->flag |= RGN_FLAG_HIDDEN;
+						}
 					}
 				}
 			}
 		}
 	}
 
+	/* put 2.50 compatibility code here until next subversion bump */
+
+
 	/* WATCH IT!!!: pointers from libdata have not been converted yet here! */
 	/* WATCH IT 2!: Userdef struct init has to be in src/usiblender.c! */
 





More information about the Bf-blender-cvs mailing list