diff options
author | Campbell Barton <ideasman42@gmail.com> | 2012-02-17 19:51:48 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2012-02-17 19:51:48 +0400 |
commit | 4c66e696fbcaefe40f0394fea8fc4a55bb7d6994 (patch) | |
tree | e8f60920e276ec1fec3c8014b77790a6c790deba /source/blender/blenloader | |
parent | 02987fd5e1fa3715d25bb7b9bd659fd509f40c57 (diff) | |
parent | b7f3887a3a8a66aeba3a16ae5d76b934af3ccc7c (diff) |
svn merge ^/trunk/blender -r44136:44189
Diffstat (limited to 'source/blender/blenloader')
-rw-r--r-- | source/blender/blenloader/intern/readfile.c | 14 | ||||
-rw-r--r-- | source/blender/blenloader/intern/writefile.c | 3 |
2 files changed, 17 insertions, 0 deletions
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index a0811fb0fcd..111d0a079e4 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -6124,6 +6124,8 @@ static void direct_link_movieclip(FileData *fd, MovieClip *clip) MovieTracking *tracking= &clip->tracking; MovieTrackingObject *object; + clip->adt= newdataadr(fd, clip->adt); + if(fd->movieclipmap) clip->cache= newmclipadr(fd, clip->cache); else clip->cache= NULL; @@ -6161,6 +6163,9 @@ static void lib_link_movieclip(FileData *fd, Main *main) clip= main->movieclip.first; while(clip) { if(clip->id.flag & LIB_NEEDLINK) { + if (clip->adt) + lib_link_animdata(fd, &clip->id, clip->adt); + clip->gpd= newlibadr_us(fd, clip->id.lib, clip->gpd); clip->id.flag -= LIB_NEEDLINK; @@ -14154,6 +14159,11 @@ static void expand_sound(FileData *fd, Main *mainvar, bSound *snd) expand_doit(fd, mainvar, snd->ipo); // XXX depreceated - old animation system } +static void expand_movieclip(FileData *fd, Main *mainvar, MovieClip *clip) +{ + if (clip->adt) + expand_animdata(fd, mainvar, clip->adt); +} static void expand_main(FileData *fd, Main *mainvar) { @@ -14237,6 +14247,10 @@ static void expand_main(FileData *fd, Main *mainvar) break; case ID_PA: expand_particlesettings(fd, mainvar, (ParticleSettings *)id); + break; + case ID_MC: + expand_movieclip(fd, mainvar, (MovieClip *)id); + break; } doit= 1; diff --git a/source/blender/blenloader/intern/writefile.c b/source/blender/blenloader/intern/writefile.c index 1971ffca4df..a6a61286fb1 100644 --- a/source/blender/blenloader/intern/writefile.c +++ b/source/blender/blenloader/intern/writefile.c @@ -2678,6 +2678,9 @@ static void write_movieclips(WriteData *wd, ListBase *idbase) MovieTrackingObject *object; writestruct(wd, ID_MC, "MovieClip", 1, clip); + if(clip->adt) + write_animdata(wd, clip->adt); + write_movieTracks(wd, &tracking->tracks); write_movieReconstruction(wd, &tracking->reconstruction); |