Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Leung <aligorith@gmail.com>2010-07-04 16:16:01 +0400
committerJoshua Leung <aligorith@gmail.com>2010-07-04 16:16:01 +0400
commitace570cb1024f0b3affd48b2f2104af3048d1707 (patch)
treef05e28af8071d1145878085f9dbf535c30bc0d71 /source/blender/blenkernel/intern
parentf9933b2fee786c0ba6341da0f151581fd768c921 (diff)
Fix for 15-day-old bug causing crashes when loading old 2.49 files, especially those with animation.
Reverting 29563 ("* Moved do_versions_ipos_to_animato from blender.c to readfile.c, where it should be.") part to the original version that (so far) is guaranteed to work fine. While this means that "nice software design" isn't obeyed once again, this works and the other approach doesn't. So far there really isn't anything really obviously different between the approaches, even after trying a few different placements of the version patches within the file-reading internals.
Diffstat (limited to 'source/blender/blenkernel/intern')
-rw-r--r--source/blender/blenkernel/intern/blender.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/blender.c b/source/blender/blenkernel/intern/blender.c
index 134d49cdf24..9a97d975ede 100644
--- a/source/blender/blenkernel/intern/blender.c
+++ b/source/blender/blenkernel/intern/blender.c
@@ -64,6 +64,7 @@
#include "BKE_displist.h"
#include "BKE_global.h"
#include "BKE_idprop.h"
+#include "BKE_ipo.h"
#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_node.h"
@@ -286,6 +287,11 @@ static void setup_app_data(bContext *C, BlendFileData *bfd, char *filename)
//setscreen(G.curscreen);
}
+ // FIXME: this version patching should really be part of the file-reading code,
+ // but we still get too many unrelated data-corruption crashes otherwise...
+ if (G.main->versionfile < 250)
+ do_versions_ipos_to_animato(G.main);
+
if(recover && bfd->filename[0] && G.relbase_valid) {
/* in case of autosave or quit.blend, use original filename instead
* use relbase_valid to make sure the file is saved, else we get <memory2> in the filename */