== Sequencer ==

This fixes: IPO pinning on sequencer strips was lost during Undo.
This commit is contained in:
Peter Schlaile
2009-05-31 17:59:57 +00:00
parent 8e882d0d61
commit ae565b9bb3

View File

@@ -4091,12 +4091,14 @@ void lib_link_screen_restore(Main *newmain, Scene *curscene)
}
else if(sl->spacetype==SPACE_IPO) {
SpaceIpo *sipo= (SpaceIpo *)sl;
if(sipo->blocktype==ID_SEQ) sipo->from= NULL; // no libdata
else sipo->from= restore_pointer_by_name(newmain, (ID *)sipo->from, 0);
sipo->ipo= restore_pointer_by_name(newmain, (ID *)sipo->ipo, 0);
if(sipo->blocktype==ID_SEQ)
sipo->from= find_sequence_from_ipo_helper(newmain, sipo->ipo);
else
sipo->from= restore_pointer_by_name(newmain, (ID *)sipo->from, 0);
// not free sipo->ipokey, creates dependency with src/
sipo->ipo= restore_pointer_by_name(newmain, (ID *)sipo->ipo, 0);
if(sipo->editipo) MEM_freeN(sipo->editipo);
sipo->editipo= NULL;
}