Don't use mj_stackAlloc for int allocations.
PiperOrigin-RevId: 559846094 Change-Id: I43eeec0b1970b2c6047be4e7c3548a4ce9aa6f5f
This commit is contained in:
committed by
Copybara-Service
parent
5c9b222566
commit
4db3377467
@@ -1615,7 +1615,7 @@ static inline int mj_nc(const mjModel* m, mjData* d, int* nnz) {
|
||||
}
|
||||
|
||||
mjMARKSTACK;
|
||||
int *chain = (int*)mj_stackAlloc(d, m->nv);
|
||||
int *chain = mj_stackAllocInt(d, m->nv);
|
||||
|
||||
for (int i=0; i < ncon; i++) {
|
||||
if (d->contact[i].exclude) {
|
||||
|
||||
@@ -774,8 +774,9 @@ void mj_implicitSkip(const mjModel* m, mjData* d, int skipfactor) {
|
||||
// set qLU = qM - dt*qDeriv
|
||||
mju_addToScl(d->qLU, d->qDeriv, -m->opt.timestep, m->nD);
|
||||
|
||||
// factorize qLU, use qacc as scratch space
|
||||
mju_factorLUSparse(d->qLU, nv, (int*)qacc, d->D_rownnz, d->D_rowadr, d->D_colind);
|
||||
// factorize qLU
|
||||
int* scratch = mj_stackAllocInt(d, nv);
|
||||
mju_factorLUSparse(d->qLU, nv, scratch, d->D_rownnz, d->D_rowadr, d->D_colind);
|
||||
}
|
||||
|
||||
// solve for qacc: (qM - dt*qDeriv) * qacc = qfrc
|
||||
|
||||
Reference in New Issue
Block a user