[Bug 39637] New: Samsung TV SDK 3.5.2 (MFC MDI app) crashes on startup

wine-bugs at winehq.org wine-bugs at winehq.org
Sat Nov 21 09:07:00 CST 2015


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

            Bug ID: 39637
           Summary: Samsung TV SDK 3.5.2 (MFC MDI app) crashes on startup
           Product: Wine
           Version: 1.8-rc1
          Hardware: x86-64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: -unknown
          Assignee: wine-bugs at winehq.org
          Reporter: focht at gmx.net
      Distribution: ---

Hello folks,

encountered during investigation of bug 32414

The installer provides the following prerequisites:

* MS .NET Framework 2.0 (will be installed if Wine-Mono not present)
* Microsoft Visual C++ 2010 x86 Redistributable (optional)

Part of main install:

* Apache HTTP server 2.0 (optional, make sure to select non-port 80 config
option)

--- snip ---
$ pwd
/home/focht/.wine/drive_c/Program Files/Samsung/Samsung TV SDK(3.5.2)/Bin

$ WINEDEBUG=+tid,+seh,+relay,+win,+msg,+actctx,+server wine ./Samsung\ TV\
SDK.exe >>log.txt 2>&1
...
0009:trace:actctx:get_manifest_in_module looking for res #0001 in module
0x400000 L"C:\\Program Files\\Samsung\\Samsung TV SDK(3.5.2)\\Bin\\Samsung TV
SDK.exe"
...
0009:warn:actctx:parse_assembly_identity_elem Unsupported yet language
attribute (L"*")
0009:trace:actctx:parse_assembly_identity_elem
name=L"Microsoft.Windows.Common-Controls" version=6.0.0.0 arch=L"x86"  
...
0009:trace:actctx:parse_dependent_assembly_elem adding
name=L"Microsoft.Windows.Common-Controls" version=6.0.0.0 arch=L"x86" 
...
0009:trace:actctx:lookup_assembly looking for
name=L"Microsoft.Windows.Common-Controls" version=6.0.0.0 arch=L"x86" 
...
0009:trace:actctx:get_manifest_in_manifest_file loading manifest file
L"\\??\\C:\\windows\\winsxs\\manifests\\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.2600.2982_none_deadbeef.manifest" 
...
0009:trace:actctx:parse_manifest parsing manifest loaded from
L"\\??\\C:\\windows\\winsxs\\manifests\\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.2600.2982_none_deadbeef.manifest"
base dir
L"x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.2600.2982_none_deadbeef" 
...
0009:trace:actctx:parse_assembly_identity_elem
name=L"Microsoft.Windows.Common-Controls" version=6.0.2600.2982 arch=L"x86"
...
0009:trace:actctx:parse_file_elem name=L"comctl32.dll" 
...
0009:trace:actctx:RtlActivateActivationContext 0x116448 cookie=115e98
...
0009:trace:actctx:RtlFindActivationContextSectionString 00000001 (null) 2
L"mfc100u.dll" 0xff9012d8 
...
0009:Call KERNEL32.CreateActCtxW(0033f7ec) ret=78720974
0009:trace:actctx:CreateActCtxW 0x33f7ec 00000088
0009:trace:actctx:RtlCreateActivationContext 0x33f7ec 00000088
0009:trace:actctx:get_manifest_in_module looking for res #0002 in module
0x785f0000 L"C:\\Program Files\\Samsung\\Samsung TV
SDK(3.5.2)\\Bin\\mfc100u.dll"
0009:trace:actctx:get_manifest_in_associated_manifest looking for manifest
associated with (null) id 2
0009:Ret  KERNEL32.CreateActCtxW() retval=ffffffff ret=78720974
0009:Call KERNEL32.CreateActCtxW(0033f7ec) ret=78720992
0009:trace:actctx:CreateActCtxW 0x33f7ec 00000088
0009:trace:actctx:RtlCreateActivationContext 0x33f7ec 00000088
0009:trace:actctx:get_manifest_in_module looking for res #0003 in module
0x785f0000 L"C:\\Program Files\\Samsung\\Samsung TV
SDK(3.5.2)\\Bin\\mfc100u.dll"
0009:trace:actctx:get_manifest_in_associated_manifest looking for manifest
associated with (null) id 3
0009:Ret  KERNEL32.CreateActCtxW() retval=ffffffff ret=78720992
0009:Call KERNEL32.CreateActCtxW(0033f7ec) ret=787209b4
0009:trace:actctx:CreateActCtxW 0x33f7ec 00000088
0009:trace:actctx:RtlCreateActivationContext 0x33f7ec 00000088
0009:trace:actctx:get_manifest_in_module looking for res #0001 in module
0x785f0000 L"C:\\Program Files\\Samsung\\Samsung TV
SDK(3.5.2)\\Bin\\mfc100u.dll"
0009:trace:actctx:get_manifest_in_associated_manifest looking for manifest
associated with (null) id 1
0009:Ret  KERNEL32.CreateActCtxW() retval=ffffffff ret=787209b4
...
0009:Call KERNEL32.ActivateActCtx(00171e80,0033e5a4) ret=78664d19
0009:trace:actctx:RtlActivateActivationContext 0x171e80 cookie=19f130
0009:Ret  KERNEL32.ActivateActCtx() retval=00000001 ret=78664d19
0009:Call user32.GetClassInfoW(00400000,785f926c L"MFCButton",0033e5ec)
ret=78664d36
0009:Ret  user32.GetClassInfoW() retval=00000000 ret=78664d36
0009:Call KERNEL32.GetLastError() ret=78664d62
0009:Ret  KERNEL32.GetLastError() retval=00000583 ret=78664d62
0009:Call KERNEL32.DeactivateActCtx(00000000,0019f130) ret=78664d73
0009:trace:actctx:RtlDeactivateActivationContext 0 cookie=19f130
0009:Ret  KERNEL32.DeactivateActCtx() retval=00000001 ret=78664d73
0009:Call KERNEL32.ActivateActCtx(00171e80,0033e5ac) ret=78830030
0009:trace:actctx:RtlActivateActivationContext 0x171e80 cookie=19f130
0009:Ret  KERNEL32.ActivateActCtx() retval=00000001 ret=78830030
0009:Call user32.RegisterClassW(0033e638) ret=78830047
0009: create_class( local=1, atom=0000, style=0000008b, instance=00400000,
extra=0, win_extra=12, client_ptr=00dabd48, name=L"MFCButton" )
0009: create_class() = 0 { atom=c097 }
0009:trace:win:alloc_winproc reusing 0xffff0000 for 0x7ebfcbf8
0009:Ret  user32.RegisterClassW() retval=0000c097 ret=78830047
0009:Call KERNEL32.DeactivateActCtx(00000000,0019f130) ret=78830089
0009:trace:actctx:RtlDeactivateActivationContext 0 cookie=19f130
0009:Ret  KERNEL32.DeactivateActCtx() retval=00000001 ret=78830089
...
0009:trace:win:WIN_CreateWindowEx L"Add" L"MfcButton" ex=00000004
style=50010000 311,0 75x21 parent=0x1010a menu=0x413 inst=0x770000 params=(nil)
0009:trace:win:dump_window_styles style: WS_CHILD WS_VISIBLE WS_TABSTOP
0009:trace:win:dump_window_styles exstyle: WS_EX_NOPARENTNOTIFY
0009: create_window( parent=0001010a, owner=00000000, atom=0000,
instance=00770000, class=L"MfcButton" )
0009: create_window() = INVALID_HANDLE { handle=00000000, parent=00000000,
owner=00000000, extra=0, class_ptr=00000000 }
0009:warn:win:create_window_handle error 6 creating window
0009:trace:win:DestroyWindow (0x1010a) 
...
0009:trace:seh:raise_exception code=c0000005 flags=0 addr=0x669aee ip=00669aee
tid=0009
0009:trace:seh:raise_exception  info[0]=00000001
0009:trace:seh:raise_exception  info[1]=00505d55
0009:trace:seh:raise_exception  eax=00505d55 ebx=00000000 ecx=00669ae8
edx=00669ae8 esi=00669ae8 edi=00600fe0
0009:trace:seh:raise_exception  ebp=00669ae8 esp=0033fb38 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00010206
0015:Call
winex11.drv.MsgWaitForMultipleObjectsEx(00000001,0033f738,ffffffff,000004ff,00000000)
ret=7ebb7ef8
0009:trace:seh:call_stack_handlers calling handler at 0x55255f code=c0000005
flags=0
0009:trace:seh:call_stack_handlers handler at 0x55255f returned 1
0009:trace:seh:call_stack_handlers calling handler at 0x536669 code=c0000005
flags=0 
...
Unhandled exception: page fault on write access to 0x00505d55 in 32-bit code
(0x00669aee). 
...
Backtrace:
=>0 0x00669aee (0x00669ae8)
  1 0x00660128 (0x00759503)
Modules:
Module    Address            Debug info    Name (97 modules)
PE      340000-  357000    Deferred        nicharacter
PE      400000-  653000    Deferred        samsung tv sdk
PE      770000-  89c000    Deferred        samsungtvsdkresenu
PE      8a0000-  959000    Deferred        sourceeditor
PE     1120000- 1174000    Deferred        emulatoripc
PE    10000000-10086000    Deferred        niparser
PE    5d360000-5d36d000    Deferred        mfc100enu
PE    63000000-6303c000    Deferred        namoxml
PE    785f0000-78a22000    Deferred        mfc100u
ELF    7b800000-7ba73000    Deferred        kernel32<elf>
  \-PE    7b820000-7ba73000    \               kernel32
ELF    7bc00000-7bd07000    Deferred        ntdll<elf>
  \-PE    7bc30000-7bd07000    \               ntdll 
...
Threads:
process  tid      prio (all id:s are in hex)
...
00000008 (D) C:\Program Files\Samsung\Samsung TV SDK(3.5.2)\Bin\Samsung TV
SDK.exe
    0000002d    0
    0000002c    0
    00000009    0 <== 
--- snip ---

The failing part:

--- snip ---
Wine-dbg>bt

Backtrace:
=>0 0x7ebf63c8 create_window_handle+0xed(parent=0x1010a, owner=(nil),
name="MfcButton", instance=0x770000, unicode=0x1)
[/home/focht/projects/wine/wine.repo/src/dlls/user32/win.c:210] in user32
(0x0033e008)
  1 0x7ebf9ca1 WIN_CreateWindowEx+0x6aa(cs=0x33e250, className="MfcButton",
module=0x770000, unicode=0x1)
[/home/focht/projects/wine/wine.repo/src/dlls/user32/win.c:1448] in user32
(0x0033e238)
  2 0x7ebfac2c CreateWindowExW+0x7d(exStyle=0x4, className="MfcButton",
windowName="Add", style=0x50010000, x=0x137, y=0, width=0x4b, height=0x15,
parent=0x1010a, menu=0x413, instance=0x770000, data=0x0(nil))
[/home/focht/projects/wine/wine.repo/src/dlls/user32/win.c:1750] in user32
(0x0033e288)
  3 0x7eb8c47f DIALOG_CreateControls32+0x22b(hwnd=0x1010a, template="",
dlgTemplate=0x33e5dc, hInst=0x770000, unicode=0x1)
[/home/focht/projects/wine/wine.repo/src/dlls/user32/dialog.c:276] in user32
(0x0033e378)
  4 0x7eb8db8d DIALOG_CreateIndirect+0xc08(hInst=0x770000,
dlgTemplate=0x8884f8, owner=0x10106, dlgProc=0x787cc257, param=0, unicode=0x1,
modal=0) [/home/focht/projects/wine/wine.repo/src/dlls/user32/dialog.c:693] in
user32 (0x0033e6b8)
  5 0x7eb8dea4 CreateDialogIndirectParamAorW+0x45(hInst=0x770000,
dlgTemplate=0x8884c4, owner=0x10106, dlgProc=0x787cc257, param=0, flags=0)
[/home/focht/projects/wine/wine.repo/src/dlls/user32/dialog.c:763] in user32
(0x0033e6e8)
  6 0x7eb8df37 CreateDialogIndirectParamW+0x40(hInst=<couldn't compute
location>, dlgTemplate=<couldn't compute location>, owner=<couldn't compute
location>, dlgProc=<couldn't compute location>, param=<couldn't compute
location>) [/home/focht/projects/wine/wine.repo/src/dlls/user32/dialog.c:781]
in user32 (0x0033e718)
  7 0x787cc7dc in mfc100u (+0x1dc7db) (0x0033e798)
  8 0x787cc65c in mfc100u (+0x1dc65b) (0x0033e7b4)
  9 0x787cc608 in mfc100u (+0x1dc607) (0x0033e7d0)
  10 0x787cc5bf in mfc100u (+0x1dc5be) (0x0033e7f4)
  11 0x0041d952 in samsung tv sdk (+0x1d951) (0x0033e804)
  12 0x00487ceb in samsung tv sdk (+0x87cea) (0x0033e870)
...
--- snip ---

Earlier (see trace) 'MFCButton' class was registered as 'local' with 0x400000
instance and is now referenced using 0x770000 instance.

--- snip ---
0009: create_class( local=1, atom=0000, style=0000008b, instance=00400000,
extra=0, win_extra=12, client_ptr=00dabd48, name=L"MFCButton" )
...
0009: create_class() = 0 { atom=c097 } 
--- snip ---

vs.

--- snip ---
0009: create_window( parent=0001010a, owner=00000000, atom=0000,
instance=00770000, class=L"MfcButton" ) 
...
0009: create_window() = INVALID_HANDLE { handle=00000000, parent=00000000,
owner=00000000, extra=0, class_ptr=00000000 }
0009:warn:win:create_window_handle error 6 creating window 
--- snip ---

Wineserver behaviour seems correct here, it's more likely something went wrong
earlier.
Needs further investigation.

$ sha1sum \[2012\]Samsung_TV_SDK_Setup\(3.5.2\).zip 
2697937103c00013cba6c3687dcc1d5295e9b32c  [2012]Samsung_TV_SDK_Setup(3.5.2).zip

$ du -sh \[2012\]Samsung_TV_SDK_Setup\(3.5.2\).zip 
286M    [2012]Samsung_TV_SDK_Setup(3.5.2).zip

$ wine --version
wine-1.8-rc1

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