diff options
author | UsernameIsAReservedWord <yoann@terminajones.com> | 2015-02-26 19:27:32 +0100 |
---|---|---|
committer | UsernameIsAReservedWord <yoann@terminajones.com> | 2015-02-26 19:27:32 +0100 |
commit | 69cf996ce60f9419922b0de4590b7ece7fa0a8be (patch) | |
tree | b372af81ed41b956a65fc63ddb33c2089a5af3ed /tools/editor/run_settings_dialog.cpp | |
parent | 1d7337ba10ad593f0786d3e356cf0b05aa9be2b4 (diff) |
should fixes #1284
I could reproduce the crash described in #1284 only with 32bits versions of godot.
The test scene contains a Plane collision shape, and a kinematicsbody with a Sphere collision shape.
The crash occurs into `CollisionSolverSW::solve_distance_plane()` on line 299 when `p_shape_A` is a `PlaneShapeSW` object and when `p_shape_B` is a `MotionShapeSW` object, because `int support_count;` is not initialized by default, and because `MotionShapeSW::get_supports()` does not change `support_count` once passed as referenced parameter, and if the default value of `support_count` is greater than the length of `supports[16]`.
I don't know if it is the good way to fix it because i'm not skilled ennough with the physics server inner working, but this fix prevents the crash and the test-scene seems to work correctly.
Diffstat (limited to 'tools/editor/run_settings_dialog.cpp')
0 files changed, 0 insertions, 0 deletions