Vitaliy Margolen wine-patch@kievinfo.com writes:
This patch deals with two sides of this problem. And actually saves some time by not calling server one extra time.
I don't think that's a good thing, now you risk calling a hook that has been deleted already. You really want to fetch the hook info from the destination thread.
Tuesday, August 15, 2006, 3:21:51 AM, Alexandre Julliard wrote:
Vitaliy Margolen wine-patch@kievinfo.com writes:
This patch deals with two sides of this problem. And actually saves some time by not calling server one extra time.
I don't think that's a good thing, now you risk calling a hook that has been deleted already. You really want to fetch the hook info from the destination thread.
I don't see a problem here. We don't remove hook when chain is in use. However calling server means we'll have to call server one more time. That's on top of 5-6 calls already.
But also the problem is passing information between threads here. We have to continue with the hook chain, so we need to tell next thread at least what hook is it (pass a handle?). Otherwise we won't know which one is the next. But that gets us back to the same problem...
Vitaliy.
Vitaliy Margolen wine-devel@kievinfo.com writes:
I don't see a problem here. We don't remove hook when chain is in use. However calling server means we'll have to call server one more time. That's on top of 5-6 calls already.
Avoiding server calls is good, but not if it leads to incorrect semantics.
But also the problem is passing information between threads here. We have to continue with the hook chain, so we need to tell next thread at least what hook is it (pass a handle?). Otherwise we won't know which one is the next. But that gets us back to the same problem...
Passing a handle is OK, it can be revalidated in the target thread.