[Bug 47668] Logos 8 (.NET/WPF 4.7.2 application) fails to download resources (needs ReOpenFile implementation)

WineHQ Bugzilla wine-bugs at winehq.org
Mon Dec 30 17:25:37 CST 2019


https://bugs.winehq.org/show_bug.cgi?id=47668

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |focht at gmx.net

--- Comment #46 from Anastasius Focht <focht at gmx.net> ---
Hello folks,

adding another app: Verbum 8 (Catholic Study Software). It is based on the same
Logos Bible library/code (https://www.logos.com/).

Download: https://verbum.com/downloads/282

--- snip ---
$ pwd
/home/focht/.wine/drive_c/users/focht/Local Settings/Application
Data/Verbum/System

$ find . -iname "*.exe"
./LogosCEF.exe
./Verbum.exe
./VerbumIndexer.exe
./LogosCom.exe
./LogosUpdater.exe

$ wine64 ./Verbum.exe >>log.txt 2>&1
...
0047:fixme:file:ReOpenFile (0000000000000B5C, 1073741824, 2, 0): stub
0047:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (000000003571A0C0 1 C)
semi-stub
0047:fixme:msvcp:_Locinfo__Locinfo_ctor_cat_cstr (0000000035719D10 1 C)
semi-stub
0047:fixme:advapi:RegisterEventSourceW ((null),L".NET Runtime"): stub
0047:fixme:advapi:ReportEventW
(0xcafe4242,0x0001,0x0000,0x00000402,(nil),0x0001,0x00000000,0x3571c000,(nil)):
stub
0047:err:eventlog:ReportEventW L"Application: Verbum.exe\nFramework Version:
v4.0.30319\nDescription: The process was terminated due to an unhandled
exception.\nException Info: System.AccessViolationException\n   at
Libronix.DigitalLibrary.NativeMethods.PatchResource(Libronix.DigitalLibrary.SafeILicenseManagerHandle,
Sys"...
0047:fixme:advapi:DeregisterEventSource (0xcafe4242) stub

Unhandled Exception: 0047:fixme:ver:GetCurrentPackageId (0x35719c90 (nil)):
stub
System.AccessViolationException: Attempted to read or write protected memory.
This is often an indication that other memory is corrupt.
   at
Libronix.DigitalLibrary.NativeMethods.PatchResource(SafeILicenseManagerHandle
pLicenseManager, String strSourcePath, String strPatchPath, String
strOutputPath)
   at LDLS4.Update.InstallResourceUpdateStage.TryApplyResourcePatch(DownloadJob
downloadJob, String resourceInstallPath, String oldResourcePath)
   at
LDLS4.Update.InstallResourceUpdateStage.ProcessFinishedResourcePatch(DownloadableUpdateJob
updateJob, DownloadJob downloadJob, String resourceInstallPath, IWorkState
workState)
   at
LDLS4.Update.InstallResourceUpdateStage.ProcessDownloadableUpdateJob(DownloadableUpdateJob
updateJob, DownloadJob downloadJob, IWorkState workState)
   at LDLS4.Update.InstallResourceUpdateStage.DoWorkCore(IWorkState workState)
   at LDLS4.Update.UpdateStageBase.<DoWork>d__23.MoveNext()
   at Libronix.Utility.Threading.AsyncWorkerTask`1.EnumMoveNext()
   at Libronix.Utility.Threading.AsyncWorkerTask`1.ContinueExecution(Object
unused)
   at Libronix.Utility.Threading.GroupedThreadPool.ExecuteNextCallback(Object
state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext
executionContext, ContextCallback callback, Object state, Boolean
preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext,
ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at
System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
   at System.Threading.ThreadPoolWorkQueue.Dispatch()
wine: Unhandled page fault on read access to 0000000000000000 at address
00000000201380E5 (thread 0047), starting debugger...
--- snip ---

Tidbit: The explicit 'wine64' is needed because some .NET executables are
'anycpu' hence will be executed as Wow64 process in Wine by default (PE32 sig).
This is only needed if the bootstrapper/launcher process is skipped (parent
folder) which ensures 64-bit child process creation.

Relevant part of trace log:

--- snip ---
$ WINEDEBUG=+seh,+relay wine64 ./Verbum.exe >>log.txt 2>&1
...
0033:Call KERNEL32.LoadLibraryExW(034ed730 L"C:\\users\\focht\\Local
Settings\\Application
Data\\Verbum\\System\\Libronix.DigitalLibrary.Native.dll",00000000,00000008)
ret=02681794 
...
0033:Ret  KERNEL32.LoadLibraryExW() retval=1fee0000 ret=02681794 
...
0060:Call PE DLL (proc=0x201dd0b8,module=0x1fee0000
L"Libronix.DigitalLibrary.Native.",reason=THREAD_ATTACH,res=(nil))
0060:Ret  PE DLL (proc=0x201dd0b8,module=0x1fee0000
L"Libronix.DigitalLibrary.Native.",reason=THREAD_ATTACH,res=(nil)) retval=1 
...
0060:Call KERNEL32.GetProcAddress(1fee0000,1d26026b "PatchResource")
ret=0273fc00
0060:Ret  KERNEL32.GetProcAddress() retval=1ff07ec0 ret=0273fc00
...
0060:Call KERNEL32.CreateFileW(339c99a0 L"C:\\users\\focht\\Local
Settings\\Application
Data\\Verbum\\Data\\0w52orzh.cex\\UpdateManager\\Resources\\287\\UAV.lbsuav",40000000,00000002,00000000,00000002,00000080,00000000)
ret=201427bb
...
0060:Ret  KERNEL32.CreateFileW() retval=00000ab4 ret=201427bb 
...
0060:Call KERNEL32.ReOpenFile(00000ab4,40000000,00000002,00000000) ret=2014221c
0060:fixme:file:ReOpenFile (0000000000000AB4, 1073741824, 2, 0): stub
0060:Ret  KERNEL32.ReOpenFile() retval=ffffffffffffffff ret=2014221c
0060:Call KERNEL32.GetLastError() ret=20142452
0060:Ret  KERNEL32.GetLastError() retval=00000000 ret=20142452
0060:Call
KERNEL32.FormatMessageA(00001100,00000000,00000000,00000400,2d72da40,00000000,00000000)
ret=2010cee4
...
0060:Ret  KERNEL32.FormatMessageA() retval=0000000a ret=2010cee4
0060:Call KERNEL32.lstrlenA(035d52f0 "Success.\r\n") ret=2010cef3
0060:Call ntdll.strlen(035d52f0 "Success.\r\n") ret=71095954
0060:Ret  ntdll.strlen() retval=0000000a ret=71095954
0060:Ret  KERNEL32.lstrlenA() retval=0000000a ret=2010cef3
...
0060:Call
ucrtbase.__stdio_common_vsnprintf_s(00000004,2d72c9c0,00001000,ffffffffffffffff,202746c0
"Issuing exception 0x%08X: %s [%hs(%d)]",00000000,2d72da18) ret=201047f2
0060:Ret  ucrtbase.__stdio_common_vsnprintf_s() retval=0000008a ret=201047f2 
...
0060:Call ucrtbase._CxxThrowException(2d72da90,2034fe40) ret=201de877
0060:Call ntdll.RtlPcToFileHeader(2034fe40,2d72d9d8) ret=7fc4209c9ab5
0060:Ret  ntdll.RtlPcToFileHeader() retval=1fee0000 ret=7fc4209c9ab5
0060:Call KERNEL32.RaiseException(e06d7363,00000001,00000004,2d72d9c0)
ret=7fc4209c9acd
0060:trace:seh:raise_exception code=e06d7363 flags=1 addr=0x7104f93d
ip=7104f93d tid=0060
0060:trace:seh:raise_exception  info[0]=0000000019930520
0060:trace:seh:raise_exception  info[1]=000000002d72da90
0060:trace:seh:raise_exception  info[2]=000000002034fe40
0060:trace:seh:raise_exception  info[3]=000000001fee0000
0060:trace:seh:raise_exception  rax=000000002d72d870 rbx=000000002d72d9c0
rcx=000000002d72d870 rdx=000000002d72d890
0060:trace:seh:raise_exception  rsi=000000002d72d9e0 rdi=000000002d72d8b0
rbp=000000002d72d988 rsp=000000002d72d850
0060:trace:seh:raise_exception   r8=0000000000000004  r9=000000002d72d9c0
r10=0000000000000000 r11=0000000000000000
0060:trace:seh:raise_exception  r12=0000000005a07a7c r13=000000002d72e190
r14=000000002d72dbe0 r15=0000000000000000
0060:trace:seh:call_vectored_handlers calling handler at 0x2669250
code=e06d7363 flags=1 
...
0060:Call
KERNEL32.FormatMessageA(00001300,00000000,00000000,00000400,2d72daa8,00000000,00000000)
ret=2010d59a
...
0060:Ret  KERNEL32.FormatMessageA() retval=0000000a ret=2010d59a 
...
0060:Call
msvcp140.?xsputn@?$basic_streambuf at DU?$char_traits at D@std@@@std@@MEAA_JPEBD_J at Z(2d72a028,20274818
"Exception 0x",0000000c) ret=7bca1bff 
...
0060:Call ucrtbase.__uncaught_exception() ret=66a9a615
0060:Ret  ucrtbase.__uncaught_exception() retval=00000000 ret=66a9a615
...
0060:Call
msvcp140.?xsputn@?$basic_streambuf at DU?$char_traits at D@std@@@std@@MEAA_JPEBD_J at Z(2d72a028,2027aca0
"b:\\jenkins\\workspace\\logos-desktop-win-stable\\sinai\\src\\sinairesource\\comutil\\filestream.cpp",0000005c)
ret=7bca1bff 
...
0060:trace:seh:RtlRestoreContext returning to 20142337 stack 2d72dac0
...
0060:Call ucrtbase.malloc(00000040) ret=20155c43
0060:Call ntdll.RtlAllocateHeap(1fdd0000,00000000,00000040) ret=7fc4209eeb75
0060:Ret  ntdll.RtlAllocateHeap() retval=339c9c90 ret=7fc4209eeb75
0060:Ret  ucrtbase.malloc() retval=339c9c90 ret=20155c43
0060:Call ucrtbase.strcmp(2027ce18 "IV",202848f8 "ValueNames") ret=201b068f
0060:Ret  ucrtbase.strcmp() retval=ffffffff ret=201b068f
0060:Call ucrtbase.__std_type_info_compare(2035d4d0,2035d2f8) ret=2014cc8e
0060:Ret  ucrtbase.__std_type_info_compare() retval=ffffffff ret=2014cc8e
0060:Call ucrtbase.__std_type_info_compare(2035d4d0,2035d4d0) ret=20130b3c
0060:Ret  ucrtbase.__std_type_info_compare() retval=00000000 ret=20130b3c
0060:Call ucrtbase.free(00000000) ret=2014e0af
0060:Call KERNEL32.HeapFree(1fdd0000,00000000,00000000) ret=7fc4209eeb95
0060:Ret  KERNEL32.HeapFree() retval=00000001 ret=7fc4209eeb95
0060:Ret  ucrtbase.free() retval=00000001 ret=2014e0af
0060:trace:seh:raise_exception code=c0000005 flags=0 addr=0x201580e5
ip=201580e5 tid=0060
0060:trace:seh:raise_exception  info[0]=0000000000000000
0060:trace:seh:raise_exception  info[1]=0000000000000000
0060:trace:seh:raise_exception  rax=00000000339c9730 rbx=0000000000000000
rcx=0000000000000000 rdx=0000000000000000
0060:trace:seh:raise_exception  rsi=000000002d72db10 rdi=0000000000000000
rbp=000000002d72db29 rsp=000000002d72da70
0060:trace:seh:raise_exception   r8=000000002d72dea0  r9=0000000000000008
r10=000000002027e040 r11=0000000000000000
0060:trace:seh:raise_exception  r12=0000000000000001 r13=0000000000000008
r14=00000000339c96e0 r15=00000000339b8cb0
0060:trace:seh:call_vectored_handlers calling handler at 0x2669250
code=c0000005 flags=0 
--- snip ---

Main assembly info:

--- snip ---
[assembly: InternalsVisibleTo("LDLS4.IntegrationTests")]
[assembly: AssemblyTitle("Verbum")]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: TargetFramework(".NETFramework,Version=v4.7.2", FrameworkDisplayName
= ".NET Framework 4.7.2")]
[assembly: ComVisible(false)]
[assembly: AssemblyTrademark("")]
[assembly: Guid("81490292-5570-4D02-A2AC-7B828DBD0A8A")]
[assembly: InternalsVisibleTo("LDLS4.Tests")]
[assembly: AssemblyProduct("Verbum")]
[assembly: CompilationRelaxations(8)]
[assembly: NeutralResourcesLanguage("en-US")]
[assembly: AssemblyCompany("Faithlife Corporation")]
[assembly: ThemeInfo(ResourceDictionaryLocation.None,
ResourceDictionaryLocation.SourceAssembly)]
[assembly: InternalsVisibleTo("Logos4.DynamicExecution")]
[assembly: AssemblyConfiguration("Ship")]
[assembly: AssemblyDescription("8.10 SR-1")]
[assembly: Extension]
[assembly: AssemblyAssociatedContentFile("vorbis.acm")]
[assembly: AssemblyCopyright("Copyright 2009-2019 Faithlife Corporation")]
[assembly: AssemblyVersion("8.10.0.32")]
--- snip ---

$ sha1sum VerbumSetup.exe 
58f591f43e8cb7b2727d74b9fbaff0ddd8ff4d3e  VerbumSetup.exe

$ du -sh VerbumSetup.exe 
536K    VerbumSetup.exe

Full setup from bootstrapper download:

$ sha1sum verbum/Install/Installers/Verbum-x64.msi 
33b00bfdf8687fdd28cc71aeede16746014e6d3e 
verbum/Install/Installers/Verbum-x64.msi

$ du -sh verbum/Install/Installers/Verbum-x64.msi 
187M    verbum/Install/Installers/Verbum-x64.msi

$ wine --version
wine-5.0-rc3

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list