On Wed Sep 13 16:17:21 2023 +0000, Nikolay Sivov wrote:
Right, I just find it hard to believe that RoActivate* needs something significantly different. Ultimately we should implement it properly at some point, so objects are hosted correctly. I suspect that thread mode used by first RoInit() call is supposed to be used for all activations that follow, but STA/MTA are still reused between RoActivate* and CoCreate*.
Oh, looking again into it, there is also a cookie which needs to be freed, and storing the cookie in thread data instead of pointer will warrant an extra flag to indicate that the mta should be unreferenced. So is it really an improvement?