[ODE] SIGSEGV in dSolveLCP() at ode/src/lcp.cpp:1137
Adam D. Moss
adam at gimp.org
Thu Feb 12 11:56:36 MST 2004
Olivier Michel wrote:
> Well, it works fine now. I patched the lcp.cpp file as follow:
Interesting, though I can't help feeling that this was
still quite solvable from the app side. Did you decrease your
step size and/or use many microsteps when using StepFast? How
many? Did no figure help?
> #define ALLOCA(x) malloc(x)
> #define FREEA(a) free(x)
(#define FREEA(x) free(x) ?)
> and I added a FREEA() for each ALLOCA() call in the source code. Now my
> simulation never crashes (great!).
> We could do the same for other files (step.cpp, matrix.cpp, etc.) and
> set up some #ifdef stuff so that the user can compile ODE in stack
> allocation of dynamic allocation mode.
>
> I volunteer to implement this patch if it will be integrated into the
> main ODE CVS trunk.
>
> Let me know what do you think about it.
I'm quite interested. This is probably useful for non-realtime
complex systems that insist on using StepSlow; it's also essential
for any platforms that don't have alloca(), though I do suspect that
the fairly massive heap churn could render it unpleasant in those
situations. What do other people think?
--Adam
--
Adam D. Moss . ,,^^ adam at gimp.org http://www.foxbox.org/ co:3
"At this point the rocket becomes engorged with astronauts."
More information about the ODE
mailing list