Alex Ionescu wrote:
- Browsing some registry keys in regedit causes regedit to crash.
Err, this is because GCC is extremly stupid. It loads a stack structure into ebx, and then the callback code becomes jmp(%ebx). The problem is that it restores protected registers before doing the jmp, so ebx is reset to it's value before the function is called...
I guess this needs to be made __volatile, but I'm afraid that this sort of bug might happen in other DLLs. Does anyone know if gcc team is aware of this?
Best regards, Alex Ionescu