[Bug 17823] Rhino 4.0 trial installer crashes in msi custom action (volume/fs serial for "c:" must be non-zero and at least 2 digits)

wine-bugs at winehq.org wine-bugs at winehq.org
Tue Dec 20 06:22:23 CST 2011


http://bugs.winehq.org/show_bug.cgi?id=17823

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|                            |http://files.na.mcneel.com/
                   |                            |rhino/4.0/2011-03-09/eval/r
                   |                            |h40eval_en_20110309.exe
                 CC|                            |focht at gmx.net
            Summary|A crash when installing     |Rhino 4.0 trial installer
                   |Rhino 4.0 trial version     |crashes in msi custom
                   |                            |action (volume/fs serial
                   |                            |for "c:" must be non-zero
                   |                            |and at least 2 digits)

--- Comment #28 from Anastasius Focht <focht at gmx.net> 2011-12-20 06:22:23 CST ---
Hello,

the msi custom action "InitRhino4Eval" creates some trial period data hidden in
registry and filesystem.
Among other info it uses the volume/fs serial from WINEPREFIX "c:" as input.

Though with Wine you can throw the WINEPREFIX away to restart the period unlike
Windows where you actually have to clean out this hidden garbage ;-)

--- snip ---
...
003e:Call KERNEL32.LoadLibraryW(0117a72c
L"C:\\users\\focht\\Temp\\msid733.tmp") ret=6821c636
003e:Ret  KERNEL32.LoadLibraryW() retval=01f20000 ret=6821c636 
...
003e:trace:msi:ACTION_CallDllFunction calling L"InitRhino4Eval" 
...
003e:Call advapi32.RegOpenKeyExW(80000001,020ad3e8
L"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\CLSID\\{EC6A44E6-657D-4A0A-9A96-4D037E4469E7}",00000000,00000001,00eb6424)
ret=01f249d4
003e:Ret  advapi32.RegOpenKeyExW() retval=00000002 ret=01f249d4 
...
003e:Call KERNEL32.GetSystemDirectoryW(00ebe240,00000104) ret=01f25955
003e:Ret  KERNEL32.GetSystemDirectoryW() retval=00000013 ret=01f25955
003e:Call KERNEL32.GetWindowsDirectoryW(00ebe038,00000104) ret=01f25965
003e:Ret  KERNEL32.GetWindowsDirectoryW() retval=0000000a ret=01f25965 
...
003e:Call KERNEL32.MultiByteToWideChar(00000003,00000000,02068da8
"\\drivers",ffffffff,00000000,00000000) ret=01f23416
003e:Ret  KERNEL32.MultiByteToWideChar() retval=00000009 ret=01f23416 
...
003e:Call KERNEL32.MultiByteToWideChar(00000003,00000000,02068db4
"__iclink",ffffffff,00000000,00000000) ret=01f23416
003e:Ret  KERNEL32.MultiByteToWideChar() retval=00000009 ret=01f23416 
...
003e:Call KERNEL32.GetVolumeInformationW(020a91c0
L"C:\\",00ebddc0,00000104,00ebdbac,00000000,00000000,00000000,00000000)
ret=01f25ce1
003e:Ret  KERNEL32.GetVolumeInformationW() retval=00000001 ret=01f25ce1 
...
003e:Call ole32.StringFromGUID2(00ebdf3c,00ebdf4c,00000032) ret=01f25842
003e:Ret  ole32.StringFromGUID2() retval=00000027 ret=01f25842 
...
003e:Call KERNEL32.GetSystemDirectoryW(00ebdba0,00000104) ret=01f25c8f
003e:Ret  KERNEL32.GetSystemDirectoryW() retval=00000013 ret=01f25c8f 
...
003e:Call KERNEL32.GetVolumeInformationW(020ad478
L"C:\\",00ebdda8,00000104,00ebdb94,00000000,00000000,00000000,00000000)
ret=01f25ce1
003e:Ret  KERNEL32.GetVolumeInformationW() retval=00000001 ret=01f25ce1
003e:Call KERNEL32.GetLastError() ret=01f4551d
003e:Ret  KERNEL32.GetLastError() retval=00000042 ret=01f4551d
003e:Call ntdll.RtlAllocateHeap(020a8000,00000000,00000016) ret=01f3dac9
003e:Ret  ntdll.RtlAllocateHeap() retval=020ad428 ret=01f3dac9
003e:Call KERNEL32.GetLastError() ret=01f4551d
003e:Ret  KERNEL32.GetLastError() retval=00000042 ret=01f4551d
003e:Call ntdll.RtlFreeHeap(020a8000,00000000,020ad468) ret=01f3db80
003e:Ret  ntdll.RtlFreeHeap() retval=00000001 ret=01f3db80
003e:Call ntdll.RtlAllocateHeap(020a8000,00000000,0000000c) ret=01f3dac9
003e:Ret  ntdll.RtlAllocateHeap() retval=020ad448 ret=01f3dac9
003e:Call KERNEL32.RaiseException(e06d7363,00000001,00000003,00ebdf74)
ret=01f3f5ca
003e:trace:seh:raise_exception code=e06d7363 flags=1 addr=0x7b838b5b
ip=7b838b5b tid=003e
003e:trace:seh:raise_exception  info[0]=19930520
003e:trace:seh:raise_exception  info[1]=00ebdfb8
003e:trace:seh:raise_exception  info[2]=02071c48
003e:trace:seh:raise_exception  eax=7b826171 ebx=7b8a97a8 ecx=19930520
edx=00ebde84 esi=00ebdf60 edi=00ebdee0
003e:trace:seh:raise_exception  ebp=00ebdec8 esp=00ebde64 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00000203
003e:trace:seh:call_vectored_handlers calling handler at 0x68da2e0e
code=e06d7363 flags=1
003e:trace:seh:call_vectored_handlers handler at 0x68da2e0e returned 0
...
Backtrace:
=>0 0x7b838b5b RaiseException+0x87(code=0xe06d7363, flags=0x1, nbargs=0x3,
args=0xebdf74) [/home/focht/projects/wine/wine-git/dlls/kernel32/except.c:84]
in kernel32 (0x00ebdec8)
  1 0x7bc64852 call_entry_point+0x29() in ntdll (0x00ebdee8)
  2 0x7bc64a7d relay_call+0x1bb(descr=0x7b8b2ef4, idx=0x4036a, stack=0xebdf4c)
[/home/focht/projects/wine/wine-git/dlls/ntdll/relay.c:435] in ntdll
(0x00ebdf38)
  3 0x7b82414d in kernel32 (+0x1414c) (0x00ebdf80)
  4 0x01f3f5ca in msid733.tmp (+0x1f5c9) (0x00ebdf80)
  5 0x01f30440 in msid733.tmp (+0x1043f) (0x00ebdfb0)
  6 0x01f23246 in msid733.tmp (+0x3245) (0x00ebe020)
0x7b838b5b RaiseException+0x87
[/home/focht/projects/wine/wine-git/dlls/kernel32/except.c:84] in kernel32:
subl    $4,%esp
84        RtlRaiseException( &record ); 
--- snip ---

The problem is the default serial for virtual "c:" drive -> "0"
The app code does some verification checks which fails for 1-digit number
derived from default "0".

You have to set a volume/fs serial for "c:" which has at least 2 digits (using
winecfg).
This prevents the crash.

I don't know if Wine should generate a random serial on its own when creating a
new WINEPREFIX.

Lets hear what Alexandre says.
If not -> WONTFIX.

$ sha1sum rh40eval_en_20110309.exe 
921bd9f5df7b5fafb5920159109f4dc868932b27  rh40eval_en_20110309.exe

$ wine --version
wine-1.3.35-43-gd9d4a06

Regards

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
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