We have a complex Windows Forms C++/CLI application which uses syncfusion ribbon forms. We recently changed our regression test system to continually use one instance of our application for multiple tests rather than starting a new instance for every test. This has exposed catastrophic GDI leaks in our application. After several hundred "closes" and "news" in one instance of the application, the application hits the 10,000 GDI handle limit and freezes or crashes.
Our application does not directly do any work with DeviceContexts or native Fonts so we are wondering if these leaks are coming from Syncfusion code.
Trying to reproduce the leaks in a testbed app will be challenging so I figured I'd ask a question here first. Does syncfusion use native fonts, devicecontexts or bitmaps for its operations? We are using the objects Syncfusion::Windows::Forms::Tools::ToolStripEx, Syncfusion::Windows::Forms::Tools::ToolStripPanelItem and a Syncfusion::Windows::Forms::Tools::DockingManager in the Form. We also use RibbonPanelMergeContainer and SuperToolTip.
Is there any way Syncfusion could be leaking GDI objects like bitmaps, fonts and DCs?