This fixes SetWindowLongPtr on WoW64. On 32-bit, we have
```
#define SetWindowLongPtrA SetWindowLongA
#define SetWindowLongPtrW SetWindowLongW
```
meaning that on WoW64, all pointers passed would be padded with `0xffffffff` (because they are treated as LONG), and this is the cause of many of the failing WoW64 tests. This fixes that behavior. I'm not sure if this is the right place to fix it though.
--
v4: wow64win: Always use NtUserSetWindowLongPtr() for GWLP_HINSTANCE and GWLP_WNDPROC.
https://gitlab.winehq.org/wine/wine/-/merge_requests/3294
In HttpSendRequestW and HttpSendRequestExW, if the header pointer is not
null but the length parameter is 0, the header length should be derived
from the string length instead.
In HttpSendRequestA and HttpSendRequestExA, on the same scenario, the
function should fail instead.
--
v3: wininet: Handle http headers correctly when length is 0
wininet/tests: Edge cases for header lengths in http requests
https://gitlab.winehq.org/wine/wine/-/merge_requests/3269