On Fri May 17 08:36:29 2024 +0000, Rémi Bernon wrote:
I have a hard time figuring whether this is correct or not wrt. id and locking consistency. Also, I still don't think it's a good idea that some object expect to be invalidated while other do not, when any object can be invalidated from the server side. It creates an unnecessary dependency between the client and the server code. Anyway, I've pushed an update with all this code dropped for now, as in the current state it's only about desktop objects and the server doesn't need to invalidate anything. It still adds an assumption that desktop objects aren't destroyed while they have connected client, hopefully that's alright.
And it doesn't work because `NtUserSetThreadDesktop` is not always called but threads still have an implicit desktop nonetheless. So, unless we track down every possible location this happens, which I'm not very excited about, we still need to support making a server request for desktop objects, which is exactly what this was doing in the previous version.