Skip to content

Commit

Permalink
Fix dRulesetIteratorCommitPatchApplied bug where ADD_VALUES was being…
Browse files Browse the repository at this point in the history
… used incorrectly
  • Loading branch information
jedbrown committed Apr 24, 2011
1 parent 5231a55 commit b1174c3
Showing 1 changed file with 5 additions and 4 deletions.
9 changes: 5 additions & 4 deletions src/fs/interface/fsrulesetit.c
Original file line number Diff line number Diff line change
Expand Up @@ -597,6 +597,7 @@ dErr dRulesetIteratorCommitPatchApplied(dRulesetIterator it,InsertMode imode,con
} else {
va_start(ap,dv);
for (i=0,p=it->link; i<it->nlinks; i++,p=p->next) {
InsertMode linkimode = imode;
const dBool identity = (dBool)(it->npatches_in_elem == 1); /* need better heuristic */
dEFS efs = p->efs[it->curelem];
dScalar *ey = &p->y[p->elemstart*p->bs];
Expand All @@ -610,12 +611,12 @@ dErr dRulesetIteratorCommitPatchApplied(dRulesetIterator it,InsertMode imode,con
err = ValueCacheDistribute(&p->vc_patch,it->Q*it->npatches_in_elem,it->patchind,identity,p->vc_elem.u,p->vc_elem.du,p->vc_elem.v,p->vc_elem.dv);dCHK(err);
}
if (v) {
err = dEFSApply(efs,it->cjinv_elem,p->bs,p->vc_elem.v,ey,dAPPLY_INTERP_TRANSPOSE,imode);dCHK(err);
imode = ADD_VALUES;
err = dEFSApply(efs,it->cjinv_elem,p->bs,p->vc_elem.v,ey,dAPPLY_INTERP_TRANSPOSE,linkimode);dCHK(err);
linkimode = ADD_VALUES;
}
if (dv) {
err = dEFSApply(efs,it->cjinv_elem,p->bs,p->vc_elem.dv,ey,dAPPLY_GRAD_TRANSPOSE,imode);dCHK(err);
imode = ADD_VALUES;
err = dEFSApply(efs,it->cjinv_elem,p->bs,p->vc_elem.dv,ey,dAPPLY_GRAD_TRANSPOSE,linkimode);dCHK(err);
linkimode = ADD_VALUES;
}
}
va_end(ap);
Expand Down

0 comments on commit b1174c3

Please sign in to comment.