GNOME Bugzilla – Bug 781301
Stack pointer corrupted by incorrect call of NtNotifyChangeMultipleKeys
Last modified: 2017-06-01 11:13:45 UTC
Created attachment 349850 [details] [review] Use correct calling convention The NtNotifyChangeMultipleKeysFunc typedef is missing the NTAPI (a.k.a. __stdcall) annotation. This leads to GCC calling it as a __cdecl function and corrupting the stack pointer on return, with predictably disastrous results.
Created attachment 349852 [details] [review] Add calling convention to GetTickCount64 This is super scary.
This is one the things I hate of windows API. Let's get this merged and backported if needed.
Hi, I think this looks reasonable to me as well... This is likely to hit 32-bit builds more than 64-bit builds, due to the differences in the way __stdcall is handled (this should go into 2.52 and perhaps even 2.50 as well, as 2.50 is supposed to be our LTS release, although 2.52's codebase didn't actually bump the compiler requirements yet for C99 features). With blessings, thank you!
LRN are you taking care of pushing this?
Attachment 349850 [details] pushed into branch glib-2-50 as commit f67e0e5f464348fe6fca485375b766fc18e6546f Attachment 349850 [details] pushed into branch glib-2-52 as commit 8e517df7d42fc06a1997f66a5271d35336759b4f Attachment 349850 [details] pushed into master as commit d1d60fc846ce208ca730919e3608bd8ffda31a0c Attachment 349852 [details] pushed into branch glib-2-50 as commit bf96a247a4502a3c52c7675756f5a87646383924 Attachment 349852 [details] pushed into branch glib-2-52 as commit 3245eba169c439180cc13ed3c76f47298d723031 Attachment 349852 [details] pushed into master as commit b4ee4628d9133556fae8144d8e5454346d23cabc