[Bug 37610] Lotus Approach: opening and closing a database causes a crash (OLE compound document files v3 may contain junk in high part of size)

WineHQ Bugzilla wine-bugs at winehq.org
Sun Feb 16 07:07:34 CST 2020


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

Anastasius Focht <focht at 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 at gmx.net> ---
Hello folks,

this was fixed by commit
https://source.winehq.org/git/wine.git/commitdiff/9d517a1727f7de379912019e417d87634427288b
("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-%20Int%20English.exe

Example databases:

http://www.johnbrown.com.au/approach/examples.htm

https://web.archive.org/web/20200216111921/http://www.johnbrown.com.au/approach/Jobmaster1.exe

-> 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 ***

-- 
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