I thought thomas siad it was the start here page or something.
Well, that does not mean there can't be others...
I believe that I found and fixed the leak regarding project files. I still have to test it a couple of times before committing though.
This leak is wxWidget's fault, in my opinion.
DeleteNode() suggests that this deletes the node and the data, even more so as the documentation to
RemoveNode() says "you have to free the object yourself". I replaced the
DeleteNode() with the code sample from the
wxList documentation (basically just deletes the node and the object), and it seems that the memory leak is gone.
I get this now when opening/closing the Code::Blocks project (compiler and debugger plugin active, all others disabled, start_here page disabled)

Index: sdk/cbproject.cpp
===================================================================
--- sdk/cbproject.cpp (revision 1889)
+++ sdk/cbproject.cpp (working copy)
@@ -989,24 +989,18 @@
return false;
// now free the rest of the project files
- int count = m_Files.GetCount();
Manager::Get()->GetEditorManager()->HideNotebook();
FilesList::Node* node = m_Files.GetFirst();
while(node)
{
ProjectFile* f = node->GetData();
- if (Manager::Get()->GetEditorManager()->Close(f->file.GetFullPath(),true))
- {
- FilesList::Node* oldNode = node;
- node = node->GetNext();
- m_Files.DeleteNode(oldNode);
- --count;
- }
- else
- node = node->GetNext();
+ Manager::Get()->GetEditorManager()->Close(f->file.GetFullPath(),true);
+ delete f;
+ delete node;
+ node = m_Files.GetFirst();
}
Manager::Get()->GetEditorManager()->ShowNotebook();
- return count == 0;
+ return true;
}
bool cbProject::SaveAllFiles()