Fix RooFit memory leaks with TIterator usage#7631
Conversation
Use TIter as much safer class
Sad that bugy code was distributed as tutorial
When reading such class, iterator was not destroyed
Simply forget to delete it :(
Try to check all methods which are returns Iterator instances
|
Starting build on |
lmoneta
left a comment
There was a problem hiding this comment.
Thank you Sergei for changing this. It looks good to me.
The only comment is that I would have changed to use range based iterators.
|
Build failed on ROOT-fedora31/noimt. Failing tests: |
|
Build failed on ROOT-debian10-i386/cxx14. Errors:
|
|
Build failed on ROOT-performance-centos8-multicore/default. Failing tests:
|
|
Build failed on ROOT-fedora30/cxx14. Failing tests: |
|
Build failed on windows10/cxx14. Errors:
|
|
Build failed on mac11.0/cxx17. Failing tests:
And 26 more |
|
@phsft-bot build |
|
Starting build on |
|
Build failed on ROOT-fedora31/noimt. Failing tests: |
Fixing #7619
In very many places in RooFit temporary TIterator instances not deleted.
In such places I replace it by
In some sense
TIterclass is equivalent tostd::unique_ptr<TIterator>