[Bf-committers] [Bf-blender-cvs] SVN commit: /data/svn/bf-blender [21428] branches/blender2.5/blender/source /blender/blenloader/intern/readfile.c: fix for loading YoFrankie levels in blender 2.5.
Campbell Barton
ideasman42 at gmail.com
Wed Jul 8 17:57:14 CEST 2009
After looking into this for a while I'm guessing that some function
earlier is skipped for library data that is needed for the multires
pointer to be valid.
I tried all the naive checks too, NULL pointer?, freeing too many
times?, newadr called when its not needed?, newadr call with
ob->id.lib?
...but none of them :(
I should have mentioned that the model that it crashes for me on the
first mesh it tries to convert, this is a linked mesh that loads fine
when opening the blend file directly.
On 7/8/09, Dalai Felinto <dfelinto at gmail.com> wrote:
> I was having this problem as well. Accessing me->mr->level was
> crashing it. Since this is a struct, my quick naive try to check for
> if (me->mr->level) didn't work :)
> That said, loading those files is working now, thanks Campbell.
>
> Cheers,
> Dalai
>
> 2009/7/8 Campbell Barton <ideasman42 at gmail.com>:
>
> > Revision: 21428
> > http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=21428
> > Author: campbellbarton
> > Date: 2009-07-08 16:32:03 +0200 (Wed, 08 Jul 2009)
> >
> > Log Message:
> > -----------
> > fix for loading YoFrankie levels in blender 2.5. Multires pointer was corrupt on linked meshes.
> >
> > Note that the files didnt use multires so something odd is going on, but for now this stops the crash.
> >
> > Modified Paths:
> > --------------
> > branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c
> >
> > Modified: branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c
> > ===================================================================
> > --- branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c 2009-07-08 14:26:43 UTC (rev 21427)
> > +++ branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c 2009-07-08 14:32:03 UTC (rev 21428)
> > @@ -9086,7 +9086,7 @@
> > void *olddata = ob->data;
> > ob->data = me;
> >
> > - if(me && me->mr) {
> > + if(me && me->id.lib==NULL && me->mr) { /* XXX - library meshes crash on loading most yoFrankie levels, the multires pointer gets invalid - Campbell */
> > MultiresLevel *lvl;
> > ModifierData *md;
> > MultiresModifierData *mmd;
> >
> >
> > _______________________________________________
> > Bf-blender-cvs mailing list
> > Bf-blender-cvs at blender.org
> > http://lists.blender.org/mailman/listinfo/bf-blender-cvs
> >
>
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>
--
- Campbell
More information about the Bf-committers
mailing list