https://bugs.winehq.org/show_bug.cgi?id=35376
Bug ID: 35376 Summary: MSN Messenger Live 2009 (14.0) installer fails with "CODE=0x80004005 Unable to populate the TOU contents" (IInternetProtocolSink::Switch is a stub) Product: Wine Version: 1.7.10 Hardware: x86 OS: Linux Status: NEW Severity: normal Priority: P2 Component: urlmon Assignee: wine-bugs@winehq.org Reporter: focht@gmx.net Classification: Unclassified
Hello folks,
found while visiting bug 18889
Application log file 'C:\users\Public\Application Data\Microsoft\WLSetup\Logs\*.log'
--- snip --- ... EPPP :(01/12/2014 16:47:32.185) Starting transfer of 'x-wlspkg://content/tou.htm' !ERROR! :(01/12/2014 16:47:32) SOURCE=WLSetup, CODE=0x80004005 Unable to populate the TOU contents (0x80004005) EPPP :(01/12/2014 16:47:38.543) Starting transfer of 'x-wlspkg://CONTENT/pd_details.htm' !ERROR! :(01/12/2014 16:47:38) SOURCE=Wizard, CODE=0x80004005 SetupUX fatal error :: Tag=TermsOfUsePanel::OnButtonClicked, Error=0x80004005 --- snip ---
Debugger session:
--- snip --- Wine-dbg>bt Backtrace: =>0 0x7ea13aa6 InternetProtocolSink_Switch+0x80(iface=0x13da24, pProtocolData=0x13c5e8) [/home/focht/projects/wine/wine-git/dlls/urlmon/binding.c:970] in urlmon (0x0033c598) 1 0x7ea190fb ProtocolSinkHandler_Switch+0xe3(iface=<couldn't compute location>, pProtocolData=<couldn't compute location>) [/home/focht/projects/wine/wine-build32/dlls/urlmon/../../include/urlmon.h:3101] in urlmon (0x0033c5f8) 2 0x7ea1a14b BPInternetProtocolSink_Switch+0x1d0(iface=<couldn't compute location>, pProtocolData=<couldn't compute location>) [/home/focht/projects/wine/wine-build32/dlls/urlmon/../../include/urlmon.h:3101] in urlmon (0x0033c678) 3 0x0044407d in wlsetup-all-14 (+0x4407c) (0x0033f168) 4 0x7ea181a9 BindProtocol_StartEx+0x6d5(iface=<couldn't compute location>, pUri=<couldn't compute location>, pOIProtSink=<couldn't compute location>, pOIBindInfo=<couldn't compute location>, grfPI=<couldn't compute location>, dwReserved=<couldn't compute location>) [/home/focht/projects/wine/wine-build32/dlls/urlmon/../../include/urlmon.h:3290] in urlmon (0x0033f2a8) 5 0x7ea15974 start_binding+0x27b(mon=(nil), binding_ctx=(nil), uri=0x980cde8, pbc=0x98082b8, to_obj=0, riid=0x4194c8, ret=0x33f398) [/home/focht/projects/wine/wine-build32/dlls/urlmon/../../include/urlmon.h:7864] in urlmon (0x0033f368) 6 0x7ea15b26 bind_to_storage+0x52(uri=0x980cde8, pbc=0x98082b8, riid=0x4194c8, ppv=0x33f444) [/home/focht/projects/wine/wine-git/dlls/urlmon/binding.c:1567] in urlmon (0x0033f3b8) 7 0x7ea3597a URLMoniker_BindToStorage+0x14a(iface=0x9808398, pbc=0x98082b8, pmkToLeft=(nil), riid=0x4194c8, ppvObject=0x33f444) [/home/focht/projects/wine/wine-git/dlls/urlmon/umon.c:280] in urlmon (0x0033f418) 8 0x00460d6c in wlsetup-all-14 (+0x60d6b) (0x0033f458) 9 0x00424b33 in wlsetup-all-14 (+0x24b32) (0x0033f484) 10 0x0045dd78 in wlsetup-all-14 (+0x5dd77) (0x0033f504) 11 0x00467cc3 in wlsetup-all-14 (+0x67cc2) (0x0033f528) ... Wine-dbg>n 966 Binding *This = impl_from_IInternetProtocolSink(iface); Wine-dbg>n 968 WARN("(%p)->(%p)\n", This, pProtocolData); Wine-dbg>n 970 return E_FAIL; --- snip ---
MSDN: http://msdn.microsoft.com/en-us/library/aa914141.aspx
--- quote --- The IInternetProtocolSink interface should pass the data from the worker thread, without modification, back to the asynchronous pluggable protocol by calling its IInternetProtocolRoot::Continue method.
Asynchronous pluggable protocol handlers can operate asynchronously in a separate worker thread. This method allows the protocol handler to pass data back to the apartment (or user interface) thread it was created on. --- quote ---
Source: http://source.winehq.org/git/wine.git/blob/f8236c5ac3d1cfa807c12dd1cea9a27f3...
--- snip --- 963 static HRESULT WINAPI InternetProtocolSink_Switch(IInternetProtocolSink *iface, 964 PROTOCOLDATA *pProtocolData) 965 { 966 Binding *This = impl_from_IInternetProtocolSink(iface); 967 968 WARN("(%p)->(%p)\n", This, pProtocolData); 969 970 return E_FAIL; 971 } --- snip ---
$ sha1sum wlsetup-all-14.exe 755024fa37c0b30a0e171edee7a0f99ee29c0ae8 wlsetup-all-14.exe
$ du -sh wlsetup-all-14.exe 135M wlsetup-all-14.exe
$ wine --version wine-1.7.10-343-g770d09d
Regards