https://bugs.winehq.org/show_bug.cgi?id=37610
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |DUPLICATE Summary|Lotus Approach: Using File, |Lotus Approach: opening and |Close dialog causes a crash |closing a database causes a | |crash (OLE compound | |document files v3 may | |contain junk in high part | |of size) Fixed by SHA1| |9d517a1727f7de379912019e417 | |d87634427288b Component|-unknown |ole32 URL| |https://archive.org/downloa | |d/LotusSmartSuite99/Lotus%2 | |0SmartSuite%209.8%20-%20Int | |%20English.exe Keywords| |download Status|NEW |RESOLVED
--- Comment #2 from Anastasius Focht focht@gmx.net --- Hello folks,
this was fixed by commit https://source.winehq.org/git/wine.git/commitdiff/9d517a1727f7de379912019e41... ("ole32: Ignore high part of size in storage version 3 files."). Part of Wine 1.7.49 release.
Bug 38967 ("Lotus Approach from Lotus Smartsuite 9.8 crashes on startup (OLE compound document files v3 may contain junk in high part of size)") is the same underlying issue. Resolving as dupe of bug 38967 since this was fixed a long time ago.
Adding stable link to Internet Archive for reproduce.
https://archive.org/details/LotusSmartSuite99
https://archive.org/download/LotusSmartSuite99/Lotus%20SmartSuite%209.8%20-%...
Example databases:
http://www.johnbrown.com.au/approach/examples.htm
https://web.archive.org/web/20200216111921/http://www.johnbrown.com.au/appro...
-> open 'dmosmpl2.apr'
NOTE: Suffers from bug 625 (symptom: error message boxes "Couldn't load the <xxx> DynaLink.")
--- snip --- $ pwd /home/focht/.wine/drive_c/lotus/approach
$ WINEDEBUG=+seh,+relay,+variant,+ole wine ./approach.exe >>log.txt 2>&1 ... 002c:Call ole32.StgIsStorageFile(0033c650 L"C:\lotus\smasters\approach\survey.mpr") ret=5f1038e2 002c:Call KERNEL32.CreateFileW(0033c650 L"C:\lotus\smasters\approach\survey.mpr",80000000,00000007,00000000,00000003,00000080,00000000) ret=7e2a4709 002c:Ret KERNEL32.CreateFileW() retval=00000190 ret=7e2a4709 002c:Call KERNEL32.ReadFile(00000190,0033c5e8,00000008,0033c5e4,00000000) ret=7e2a472a 002c:Ret KERNEL32.ReadFile() retval=00000001 ret=7e2a472a 002c:Call KERNEL32.CloseHandle(00000190) ret=7e2a4769 002c:Ret KERNEL32.CloseHandle() retval=00000001 ret=7e2a4769 002c:Ret ole32.StgIsStorageFile() retval=00000000 ret=5f1038e2 002c:Call KERNEL32.lstrlenA(0033c894 "C:\lotus\smasters\approach\survey.mpr") ret=5f10f730 002c:Ret KERNEL32.lstrlenA() retval=00000025 ret=5f10f730 002c:Call KERNEL32.MultiByteToWideChar(00000000,00000000,0033c894 "C:\lotus\smasters\approach\survey.mpr",00000026,0033c638,00000026) ret=5f10f745 002c:Ret KERNEL32.MultiByteToWideChar() retval=00000026 ret=5f10f745 002c:Call ole32.StgOpenStorage(0033c638 L"C:\lotus\smasters\approach\survey.mpr",00000000,00000020,00000000,00000000,0033c84c) ret=5f1037db 002c:Call KERNEL32.CreateFileW(0033c638 L"C:\lotus\smasters\approach\survey.mpr",80000000,00000001,00000000,00000003,10000080,00000000) ret=7e2a3ed5 002c:Ret KERNEL32.CreateFileW() retval=00000190 ret=7e2a3ed5 002c:Call KERNEL32.GetFileSize(00000190,00000000) ret=7e2a3eef 002c:Ret KERNEL32.GetFileSize() retval=0001e400 ret=7e2a3eef 002c:Call ntdll.RtlAllocateHeap(00110000,00000000,0000227c) ret=7e2a2ec4 002c:Ret ntdll.RtlAllocateHeap() retval=019eb690 ret=7e2a2ec4 002c:Call ntdll.RtlAllocateHeap(00110000,00000000,00000014) ret=7e270cc9 002c:Ret ntdll.RtlAllocateHeap() retval=001728b8 ret=7e270cc9 002c:Call KERNEL32.GetFullPathNameW(0033c638 L"C:\lotus\smasters\approach\survey.mpr",00000104,0033c2a8,00000000) ret=7e270d1c 002c:Ret KERNEL32.GetFullPathNameW() retval=00000025 ret=7e270d1c 002c:Call ntdll.RtlAllocateHeap(00110000,00000000,0000004c) ret=7e270d75 002c:Ret ntdll.RtlAllocateHeap() retval=001726b0 ret=7e270d75 002c:Call KERNEL32.GetFileSize(00000190,0033c514) ret=7e270514 002c:Ret KERNEL32.GetFileSize() retval=0001e400 ret=7e270514 002c:Call KERNEL32.GetTickCount() ret=7e29fbc7 002c:Ret KERNEL32.GetTickCount() retval=0600552b ret=7e29fbc7 002c:Call KERNEL32.LockFileEx(00000190,00000003,00000000,00000001,00000000,0033c42c) ret=7e270b91 002c:Ret KERNEL32.LockFileEx() retval=00000001 ret=7e270b91 002c:Call KERNEL32.LockFileEx(00000190,00000003,00000000,00000014,00000000,0033c43c) ret=7e270b91 002c:Ret KERNEL32.LockFileEx() retval=00000001 ret=7e270b91 002c:Call KERNEL32.UnlockFileEx(00000190,00000000,00000014,00000000,0033c3fc) ret=7e270a9f 002c:Ret KERNEL32.UnlockFileEx() retval=00000001 ret=7e270a9f 002c:Call KERNEL32.LockFileEx(00000190,00000003,00000000,00000014,00000000,0033c43c) ret=7e270b91 002c:Ret KERNEL32.LockFileEx() retval=00000001 ret=7e270b91 002c:Call KERNEL32.UnlockFileEx(00000190,00000000,00000014,00000000,0033c3fc) ret=7e270a9f 002c:Ret KERNEL32.UnlockFileEx() retval=00000001 ret=7e270a9f 002c:Call KERNEL32.LockFileEx(00000190,00000003,00000000,00000001,00000000,0033c44c) ret=7e270b91 002c:Ret KERNEL32.LockFileEx() retval=00000001 ret=7e270b91 002c:Call KERNEL32.LockFileEx(00000190,00000003,00000000,00000001,00000000,0033c44c) ret=7e270b91 002c:Ret KERNEL32.LockFileEx() retval=00000001 ret=7e270b91 002c:Call KERNEL32.UnlockFileEx(00000190,00000000,00000001,00000000,0033c43c) ret=7e270a9f 002c:Ret KERNEL32.UnlockFileEx() retval=00000001 ret=7e270a9f 002c:Call KERNEL32.SetFilePointerEx(00000190,00000000,00000000,00000000,00000000) ret=7e2707ea 002c:Ret KERNEL32.SetFilePointerEx() retval=00000001 ret=7e2707ea 002c:Call KERNEL32.ReadFile(00000190,0033b4c0,00000200,0033b43c,00000000) ret=7e270830 002c:Ret KERNEL32.ReadFile() retval=00000001 ret=7e270830 ... 002c:Call KERNEL32.lstrcpynA(0033cb5c,0033c894 "C:\lotus\smasters\approach\survey.mpr",0000007f) ret=0044a7ce 002c:Ret KERNEL32.lstrcpynA() retval=0033cb5c ret=0044a7ce 002c:Call KERNEL32.lstrlenA(006bdf2c "INFO") ret=5f10f730 002c:Ret KERNEL32.lstrlenA() retval=00000004 ret=5f10f730 002c:Call KERNEL32.MultiByteToWideChar(00000000,00000000,006bdf2c "INFO",00000005,0033c65c,00000005) ret=5f10f745 002c:Ret KERNEL32.MultiByteToWideChar() retval=00000005 ret=5f10f745 ... 002c:Call ole32.CoGetMalloc(00000001,0033c84c) ret=5f102043 002c:Ret ole32.CoGetMalloc() retval=00000000 ret=5f102043 002c:Call ntdll.RtlFreeHeap(00110000,00000000,0016e798) ret=7e2773ce 002c:Ret ntdll.RtlFreeHeap() retval=00000001 ret=7e2773ce 002c:Call msvcrt.strstr(00000000,0033cc44 "\n\n") ret=00467daa trace:seh:raise_exception code=c0000005 flags=0 addr=0xf7bc9bed ip=f7bc9bed tid=002c trace:seh:raise_exception info[0]=00000000 trace:seh:raise_exception info[1]=00000000 trace:seh:raise_exception eax=00000000 ebx=7e409000 ecx=0000000a edx=00000008 esi=0033c880 edi=00000000 trace:seh:raise_exception ebp=0033cc44 esp=0033c7c0 cs=0023 ds=002b es=002b fs=0063 gs=006b flags=00010246 trace:seh:call_stack_handlers calling handler at 0x6747ed code=c0000005 flags=0 trace:seh:call_stack_handlers handler at 0x6747ed returned 1 --- snip ---
$ sha1sum Lotus\ SmartSuite\ 9.8\ -\ Int\ English.exe 889d337d6a6f2a0c25978ce2168b86ea5e8a4069 Lotus SmartSuite 9.8 - Int English.exe
$ du -sh Lotus\ SmartSuite\ 9.8\ -\ Int\ English.exe 149M Lotus SmartSuite 9.8 - Int English.exe
$ wine --version wine-5.1-391-g7332de64a5
Regards
*** This bug has been marked as a duplicate of bug 38967 ***