"James Hawkins" truiken@gmail.com writes:
wininet's url cache API needs some work, which is reflected in a lot of these todo_wine's.
Changelog:
- Add tests for URLDownloadToCacheFile.
The test crashes here:
Unhandled exception: page fault on read access to 0x00000008 in 32-bit code (0x40abee00). Register dump: CS:0073 SS:007b DS:007b ES:007b FS:003b GS:0033 EIP:40abee00 ESP:406de350 EBP:406de3b8 EFLAGS:00010202( - 00 - -RI1) EAX:00000041 EBX:40add6b0 ECX:ffffffff EDX:40ad7d01 ESI:00000000 EDI:82000000 Stack dump: 0x406de350: 02000000 40306308 4001ec81 406df6c2 0x406de360: 00000001 406de394 00000000 40380000 0x406de370: 403cf3f8 00000010 00000002 00000000 0x406de380: 40ad7d60 403cf380 01000000 00000000 0x406de390: 02000000 4d430001 403cf3f8 00000010 0x406de3a0: 00000000 00000000 40380000 40add6b0 Backtrace: =>1 0x40abee00 HTTP_ProcessHeader+0x1d0(lpwhr=0x403cf380, field=0x40ad7d60, value=0x0, dwModifier=0xa2000000) [/home/julliard/wine/wine/dlls/wininet/http.c:2823] in wininet (0x40abee00) 2 0x40abfec3 HTTP_HttpOpenRequestW+0x1f3(lpwhs=0x403ce430, lpszVerb=0x0, lpszObjectName=0x406df6c0, lpszVersion=0x0, lpszReferrer=0x0, lpszAcceptTypes=0x0, dwFlags=0x0, dwContext=0x0) [/home/julliard/wine/wine/dlls/wininet/http.c:1078] in wininet (0x40abfec3) 3 0x40ac0cc5 HttpOpenRequestW+0x205(hHttpSession=0x2, lpszVerb=0x0, lpszObjectName=0x406df6c0, lpszVersion=0x0, lpszReferrer=0x0, lpszAcceptTypes=0x0, dwFlags=0x0, dwContext=0x0) [/home/julliard/wine/wine/dlls/wininet/http.c:691] in wininet (0x40ac0cc5) 4 0x40a68a7c URLDownloadToFileW+0x1ac(pCaller=0x0, szURL=0x403d9fd0, szFileName=0x406dfa6e, dwReserved=0x0, lpfnCB=0x0) [/home/julliard/wine/wine/dlls/urlmon/umon.c:1481] in urlmon (0x40a68a7c) 5 0x40a69016 URLDownloadToCacheFileW+0xd6(lpUnkCaller=0x0, szURL=0x403d9fd0, szFileName=0x403da2d8, dwBufLength=0x208, dwReserved=0x0, pBSC=0x0) [/home/julliard/wine/wine/dlls/urlmon/umon.c:1635] in urlmon (0x40a69016) 6 0x40a6929c URLDownloadToCacheFileA+0x10c(lpUnkCaller=0x0, szURL=0x405ba513, szFileName=0x406dfd14, dwBufLength=0x104, dwReserved=0x0, pBSC=0x0) [/home/julliard/wine/wine/dlls/urlmon/umon.c:1596] in urlmon (0x40a6929c) 7 0x405b4adf test_URLDownloadToCacheFile+0x11f [/home/julliard/wine/wine/dlls/urlmon/tests/url.c:797] in urlmon_test (0x405b4adf) 8 0x405b5b1f func_url+0xa4f [/home/julliard/wine/wine/dlls/urlmon/tests/url.c:903] in urlmon_test (0x405b5b1f) 9 0x405b61b1 run_test+0x121(name=0x403804a7) [/home/julliard/wine/wine/dlls/urlmon/tests/../../../include/wine/test.h:365] in urlmon_test (0x405b61b1) 10 0x405b64d9 __wine_spec_exe_entry+0x99(peb=0x403108a0) [/home/julliard/wine/wine/dlls/winecrt0/exe_entry.c:37] in urlmon_test (0x405b64d9) 11 0x405001eb start_process+0xeb(arg=0x0) [/home/julliard/wine/wine/dlls/kernel/process.c:813] in kernel32 (0x405001eb) 12 0x4001f8b7 wine_switch_to_stack+0x17 in libwine.so.1 (0x4001f8b7) 0x40abee00 HTTP_ProcessHeader+0x1d0 [/home/julliard/wine/wine/dlls/wininet/http.c:2823] in wininet: movl 0x8(%esi),%edx 2823 lphttpHdr->wFlags |= HDR_ISREQUEST; Wine-dbg>