Commit 2c5cdebe authored by Mark Olesen's avatar Mark Olesen

ENH: avoid memory leaks for HashPtrTable, PtrMap insertion (issue #749)

- disallow insert() of raw pointers, since a failed insertion
  (ie, entry already existed) results in an unmanaged pointer.

  Either insert using an autoPtr, or set() with raw pointers or autoPtr.

- IOobjectList::add() now takes an autoPtr instead of an object reference

- IOobjectList::remove() now returns an autoPtr instead of a raw pointer
parent c794fa0d
......@@ -122,11 +122,10 @@ void Foam::functionObjects::runTimePostPro::scene::readColours
const dictionary& dict
)
{
const wordList colours = dict.toc();
forAll(colours, i)
const wordList colours(dict.toc());
for (const word& c : colours)
{
const word& c = colours[i];
colours_.insert(c, Function1<vector>::New(c, dict).ptr());
colours_.insert(c, Function1<vector>::New(c, dict));
}
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment