I think what I'm doing in that patch is legal and well defined. DeleteAtom basically does this: _vatom.erase(_vatom.begin()+(atom->GetIdx()-1));
where _vatom is a vector of pointers to atoms. When the element of the vector is deleted then all the iterators and references to elements __after__ the position of the removed element become invalid. So if I decrement the iterator back to the last unchanged position and then increment it again it should point to the next element after the removed one, and it does. Reinis Pk, 2011-05-27 12:49 +0100, Noel O'Boyle rakstīja: > Regarding Patch 3196285, AFAIK, all of our iterators are undefined > when you call DeleteAtom (this is a C++ idiom). The recommended way of > doing this is to append the atom to be deleted to a vector, and then > delete all members of the vector once the loop is over. > > Anyone else? > > - Noel > > On 27 May 2011 12:14, My Th <rei4...@gmail.com> wrote: > > Hi! > > > > A while ago I posted these patches in the tracker: > > https://sourceforge.net/tracker/?func=detail&aid=3196280&group_id=40728&atid=428742 > > https://sourceforge.net/tracker/?func=detail&aid=3196285&group_id=40728&atid=428742 > > > > The first one fixes indexing in obutil.cpp::InternalToCartesian(), the > > second one fixes removal of dummy atoms in the same function. > > > > Before the code for removing dummy atoms never was executed and dummy > > atoms were not removed. These patches fixes that, so the dummy atoms are > > removed when the function obutil.cpp::InternalToCartesian() is called. > > > > These patches still are not committed. Is there some technical reason > > for that? Could they be applied before the next point release of OB? > > > > > > Regards, > > Reinis > > > > > > ------------------------------------------------------------------------------ > > vRanger cuts backup time in half-while increasing security. > > With the market-leading solution for virtual backup and recovery, > > you get blazing-fast, flexible, and affordable data protection. > > Download your free trial now. > > http://p.sf.net/sfu/quest-d2dcopy1 > > _______________________________________________ > > OpenBabel-Devel mailing list > > OpenBabel-Devel@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/openbabel-devel > > ------------------------------------------------------------------------------ vRanger cuts backup time in half-while increasing security. With the market-leading solution for virtual backup and recovery, you get blazing-fast, flexible, and affordable data protection. Download your free trial now. http://p.sf.net/sfu/quest-d2dcopy1 _______________________________________________ OpenBabel-Devel mailing list OpenBabel-Devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-devel