[Bf-committers] [Bf-blender-cvs] SVN commit: /data/svn/bf-blender [47736] trunk/blender/source/blender/ blenkernel/intern/armature.c: Fix invalid array index in armature_deform_verts().

Campbell Barton ideasman42 at gmail.com
Mon Jun 11 14:24:19 CEST 2012


Would prefer to revert this fix, if this is ever negative its going to
give errors all over and be unreliable (crash somewhere else).

If we find this was possible in previous releases - it should be
corrected on file-read for example, but not for modifiers/tools.

or - accept that it can happen and then check it everywhere (but think
this is overkill).

On Mon, Jun 11, 2012 at 1:31 PM, Sergey Sharybin <sergey.vfx at gmail.com> wrote:
> Well, personally i wouldn't mind keeping this -- at least it helps open
> file and likely reconfigure some
> armatures so they're not buggy again.
>
> But not sure about how to fix that issue which lead to such a problem.
> Probably the only case is to ask
> users to try to reproduce the issue again. At least that's what we're doing
> when some meshes are
> corrupted..
>
> On Mon, Jun 11, 2012 at 5:10 PM, Nicholas Bishop
> <nicholasbishop at gmail.com>wrote:
>
>> Makes sense. Do you reckon this is an acceptable hack for this
>> specific instance, or should I revert the commit?
>>
>> -Nicholas
>>
>> On Mon, Jun 11, 2012 at 7:04 AM, Sergey Sharybin <sergey.vfx at gmail.com>
>> wrote:
>> > Hey Nick!
>> >
>> > I've been thinking about such a fix, but that's not actually full fix.
>> > There're still lot's of places in blender who assumes
>> > def_nr is not negative. And the real fix would actually be to figure out
>> > why this index became negative due to it
>> > shouldn't actually.
>> >
>> > Checked the code, but can't find place where it could happen.
>> >
>> > On Mon, Jun 11, 2012 at 5:01 PM, Nicholas Bishop
>> > <nicholasbishop at gmail.com>wrote:
>> >
>> >> Revision: 47736
>> >>
>> >>
>> http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=47736
>> >> Author:   nicholasbishop
>> >> Date:     2012-06-11 11:00:58 +0000 (Mon, 11 Jun 2012)
>> >> Log Message:
>> >> -----------
>> >> Fix invalid array index in armature_deform_verts().
>> >>
>> >> Check that the def_nr is non-negative before using as index.
>> >>
>> >> Fixes bug [#31700] Crash when opening .blend file on 64bit environment
>> >>
>> >> Modified Paths:
>> >> --------------
>> >>    trunk/blender/source/blender/blenkernel/intern/armature.c
>> >>
>> >> Modified: trunk/blender/source/blender/blenkernel/intern/armature.c
>> >> ===================================================================
>> >> --- trunk/blender/source/blender/blenkernel/intern/armature.c
>> 2012-06-11
>> >> 10:31:24 UTC (rev 47735)
>> >> +++ trunk/blender/source/blender/blenkernel/intern/armature.c
>> 2012-06-11
>> >> 11:00:58 UTC (rev 47736)
>> >> @@ -986,7 +986,7 @@
>> >>
>> >>                        for (j = dvert->totweight; j != 0; j--, dw++) {
>> >>                                const int index = dw->def_nr;
>> >> -                               if (index < defbase_tot && (pchan =
>> >> defnrToPC[index])) {
>> >> +                               if (index >= 0 && index < defbase_tot &&
>> >> (pchan = defnrToPC[index])) {
>> >>                                        float weight = dw->weight;
>> >>                                        Bone *bone = pchan->bone;
>> >>                                        pdef_info = pdef_info_array +
>> >> defnrToPCIndex[index];
>> >>
>> >> _______________________________________________
>> >> Bf-blender-cvs mailing list
>> >> Bf-blender-cvs at blender.org
>> >> http://lists.blender.org/mailman/listinfo/bf-blender-cvs
>> >>
>> >
>> >
>> >
>> > --
>> > With best regards, Sergey Sharybin
>> > _______________________________________________
>> > Bf-committers mailing list
>> > Bf-committers at blender.org
>> > http://lists.blender.org/mailman/listinfo/bf-committers
>> _______________________________________________
>> Bf-committers mailing list
>> Bf-committers at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-committers
>>
>
>
>
> --
> With best regards, Sergey Sharybin
> _______________________________________________
> 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