Only make the Windows COM server an AppServer singleton.
Making all App instances singletons appears to have been a mistake. Singletons in Chromium are typically leaky singletons, and thus, destructors for App instance don't run, breaking expectations and creating confusion. This CL makes all the App instances normal ref counted class instances, execept for the Windows COM server, which remains a singleton because of a design quirk: coclass instances created by COM need a way to refer the COM App server class (to talk to the update service, for example). We could not find a way to pass the App instance to coclasses, and so, the need for the singleton. TBR: waffles@chromium.org Bug: 1064498 Change-Id: I2872aa1821fcf27b74f22236483cfc11ea7c3059 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2252462Reviewed-by:Sorin Jianu <sorin@chromium.org> Commit-Queue: Sorin Jianu <sorin@chromium.org> Cr-Commit-Position: refs/heads/master@{#780057}
Showing
Please register or sign in to comment