diff options
author | Campbell Barton <ideasman42@gmail.com> | 2011-12-23 12:41:53 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2011-12-23 12:41:53 +0400 |
commit | 4ced91da47ec1e95d71beef07b218fd0290ff68a (patch) | |
tree | 5f96c6268e194dd4cabcbe33efdc2fd226652cab /source/blender/blenloader | |
parent | 87a34772003413bd402ea380ce5d8d7c3f3a6337 (diff) | |
parent | ac498a6b64ea2f034aa0177894fb25d0401e327b (diff) |
svn merge ^/trunk/blender -r42778:42839
Diffstat (limited to 'source/blender/blenloader')
-rw-r--r-- | source/blender/blenloader/CMakeLists.txt | 1 | ||||
-rw-r--r-- | source/blender/blenloader/SConscript | 2 | ||||
-rw-r--r-- | source/blender/blenloader/intern/readfile.c | 33 |
3 files changed, 28 insertions, 8 deletions
diff --git a/source/blender/blenloader/CMakeLists.txt b/source/blender/blenloader/CMakeLists.txt index 9cf721738a7..35271f7b873 100644 --- a/source/blender/blenloader/CMakeLists.txt +++ b/source/blender/blenloader/CMakeLists.txt @@ -32,6 +32,7 @@ set(INC ../nodes ../render/extern/include ../../../intern/guardedalloc + ../imbuf ) set(INC_SYS diff --git a/source/blender/blenloader/SConscript b/source/blender/blenloader/SConscript index 57075ac3bcf..20b560744b3 100644 --- a/source/blender/blenloader/SConscript +++ b/source/blender/blenloader/SConscript @@ -5,7 +5,7 @@ sources = env.Glob('intern/*.c') incs = '. #/intern/guardedalloc ../blenlib ../blenkernel' incs += ' ../makesdna ../editors/include' -incs += ' ../render/extern/include ../makesrna ../nodes ../bmesh' +incs += ' ../render/extern/include ../makesrna ../nodes ../bmesh ../imbuf' incs += ' ' + env['BF_ZLIB_INC'] diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index 1c554cdcf9a..9695b90593b 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -141,6 +141,8 @@ #include "BKE_utildefines.h" // SWITCH_INT DATA ENDB DNA1 O_BINARY GLOB USER TEST REND #include "BKE_sound.h" +#include "IMB_imbuf.h" // for proxy / timecode versioning stuff + #include "NOD_socket.h" //XXX #include "BIF_butspace.h" // badlevel, for do_versions, patching event codes @@ -10771,8 +10773,11 @@ static void do_versions(FileData *fd, Library *lib, Main *main) void *olddata = ob->data; ob->data = me; - if(me && me->id.lib==NULL && me->mr && me->mr->level_count > 1) /* XXX - library meshes crash on loading most yoFrankie levels, the multires pointer gets invalid - Campbell */ + /* XXX - library meshes crash on loading most yoFrankie levels, + * the multires pointer gets invalid - Campbell */ + if(me && me->id.lib==NULL && me->mr && me->mr->level_count > 1) { multires_load_old(ob, me); + } ob->data = olddata; } @@ -12670,10 +12675,12 @@ static void do_versions(FileData *fd, Library *lib, Main *main) clip->aspy= 1.0f; } - /* XXX: a bit hacky, probably include imbuf and use real constants are nicer */ - clip->proxy.build_tc_flag= 7; + clip->proxy.build_tc_flag= IMB_TC_RECORD_RUN | + IMB_TC_FREE_RUN | + IMB_TC_INTERPOLATED_REC_DATE_FREE_RUN; + if(clip->proxy.build_size_flag==0) - clip->proxy.build_size_flag= 1; + clip->proxy.build_size_flag= IMB_PROXY_25; if(clip->proxy.quality==0) clip->proxy.quality= 90; @@ -12813,6 +12820,12 @@ static void do_versions(FileData *fd, Library *lib, Main *main) scene->gm.exitkey = 218; // Blender key code for ESC } } + { + MovieClip *clip; + for(clip= main->movieclip.first; clip; clip= clip->id.next) { + clip->proxy.build_tc_flag|= IMB_TC_RECORD_RUN_NO_GAPS; + } + } } /* WATCH IT!!!: pointers from libdata have not been converted yet here! */ @@ -14343,7 +14356,8 @@ static void read_libraries(FileData *basefd, ListBase *mainlist) expand_main(fd, mainptr); - /* dang FileData... now new libraries need to be appended to original filedata, it is not a good replacement for the old global (ton) */ + /* dang FileData... now new libraries need to be appended to original filedata, + * it is not a good replacement for the old global (ton) */ while( fd->mainlist.first ) { Main *mp= fd->mainlist.first; BLI_remlink(&fd->mainlist, mp); @@ -14365,8 +14379,13 @@ static void read_libraries(FileData *basefd, ListBase *mainlist) ID *idn= id->next; if(id->flag & LIB_READ) { BLI_remlink(lbarray[a], id); - BKE_reportf(basefd->reports, RPT_ERROR, "LIB ERROR: %s:'%s' unread libblock missing from '%s'\n", BKE_idcode_to_name(GS(id->name)), id->name+2, mainptr->curlib->filepath); - if(!G.background && basefd->reports)printf("LIB ERROR: %s:'%s' unread libblock missing from '%s'\n", BKE_idcode_to_name(GS(id->name)), id->name+2, mainptr->curlib->filepath); + BKE_reportf(basefd->reports, RPT_ERROR, + "LIB ERROR: %s:'%s' unread libblock missing from '%s'\n", + BKE_idcode_to_name(GS(id->name)), id->name+2, mainptr->curlib->filepath); + if (!G.background && basefd->reports) { + printf("LIB ERROR: %s:'%s' unread libblock missing from '%s'\n", + BKE_idcode_to_name(GS(id->name)), id->name+2, mainptr->curlib->filepath); + } change_idid_adr(mainlist, basefd, id, NULL); MEM_freeN(id); |