Fun with ITaskbarList3::ThumbBarUpdateButtons
• 1 min read
This issue just cropped up:
- We are in function A (a callback function)
- We call ITaskbarList3::ThumbBarUpdateButtons
- It calls SendMessageTimeout with the SMTO_NORMAL flag and not SMTO_BLOCK
- Another instance of our process does a SendMessage to the first instance (for command line processing in this case)
- That results in function B being called. But its not legal to call function B within function A!!
We end up with a boom of kinds.
The end result is that I will have to make all calls to ITaskbarList3::ThumbBarUpdateButtons from a custom message posted by PostMessage - because in any other case it can open up holes I don’t want (even if they are rare holes…)
Update: As far as I can see, Shell_NotifyIcon does use the SMTO_BLOCK flag. So why ThumbBarUpdateButtons doesn’t I don’t know..
Post a comment