[petsc-dev] is this wrong?
Mark Adams
mfadams at lbl.gov
Mon Nov 6 08:25:22 CST 2017
This code looks wrong. I get a valgrind warning if the option is not set. *I
think this code should be added.*
PetscErrorCode PetscOptionsBool_Private(PetscOptionItems
*PetscOptionsObject,const char opt[],const char text[],const char
man[],PetscBool currentvalue,PetscBool *flg,PetscBool *set)
{
PetscErrorCode ierr;
PetscBool iset;
PetscOptionItem amsopt;
PetscFunctionBegin;
if (!PetscOptionsObject->count) {
ierr =
PetscOptionItemCreate_Private(PetscOptionsObject,opt,text,man,OPTION_BOOL,&amsopt);CHKERRQ(ierr);
ierr = PetscMalloc(sizeof(PetscBool),&amsopt->data);CHKERRQ(ierr);
*(PetscBool*)amsopt->data = currentvalue;
}
*flg = currentvalue;*
ierr =
PetscOptionsGetBool(PetscOptionsObject->options,PetscOptionsObject->prefix,opt,flg,&iset);CHKERRQ(ierr);
if (set) *set = iset;
if (PetscOptionsObject->printhelp && PetscOptionsObject->count == 1 &&
!PetscOptionsObject->alreadyprinted) {
const char *v = PetscBools[currentvalue];
ierr = (*PetscHelpPrintf)(PetscOptionsObject->comm," -%s%s: <%s> %s
(%s)\n",PetscOptionsObject->prefix?PetscOptionsObject->prefix:"",opt+1,v,text,ManSection(man));CHKERRQ(ierr);
}
PetscFunctionReturn(0);
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20171106/de04d243/attachment.html>
More information about the petsc-dev
mailing list