[Bug 11998] NEXON client installers using embedded IE browser control: buttons don't respond to click (Lunia Senki, Combat Arms, War Rock)

wine-bugs at winehq.org wine-bugs at winehq.org
Fri Dec 13 18:13:42 CST 2013


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

--- Comment #13 from Anastasius Focht <focht at gmx.net> ---
Created attachment 46848
  --> http://bugs.winehq.org/attachment.cgi?id=46848
WINEDEBUG=+tid,+seh,+relay,+mshtml,+shdocvw wine ./CombatArmsSetupV37.exe
>>log.txt 2>&1

Hello folks,

attached is trace log with generated from 'Combat Arms' NEXON installer, last
40000 lines, filtered for tid:0025, compressed with 'bzip2', 

The 'click' event from the button seems propagated.

HTMLAnchorElement_handle_event -> navigate_anchor -> navigate_url ->
super_navigate -> navigate_fragment ?

Selector URI:
"res://C:\users\focht\Temp\NGMResource.dll/Template_Stipulation.html#" (there
is no hash id?)

With Winedbg I came that far until it hit an exit path in 'navigate_fragment'.

--- snip ---
Wine-dbg>bt
Backtrace:

=>0 0x7da2ad2f navigate_fragment+0x370(window=0x1f164b8, uri=0x28722c0)
[/home/focht/projects/wine/wine-git/dlls/mshtml/navigate.c:2167] in mshtml
(0x00a79ef8)

  1 0x7da2b067 super_navigate+0x292(window=0x1f164b8, uri=0x28722c0, flags=0x1,
headers=0x0(nil), post_data=0x0(nil), post_data_size=0)
[/home/focht/projects/wine/wine-git/dlls/mshtml/navigate.c:2220] in mshtml
(0x00a79fe8)

  2 0x7da2bc3d navigate_uri+0x232(window=0x1f164b8, uri=0x28722c0,
display_uri="res://C:\users\focht\Temp\NGMResource.dll/Template_Stipulation.html#",
request_data=(nil), flags=0x1)
[/home/focht/projects/wine/wine-git/dlls/mshtml/navigate.c:2429] in mshtml
(0x00a7a088)

  3 0x7da2c1d8 navigate_url+0xe8(window=0x1f164b8,
new_url="res://C:\users\focht\Temp\NGMResource.dll/Template_Stipulation.html#",
base_uri=0x132158, flags=0x1)
[/home/focht/projects/wine/wine-git/dlls/mshtml/navigate.c:2549] in mshtml
(0x00a7a0d8)

  4 0x7d99ad26 navigate_anchor+0x31f(This=0x2aa1f18)
[/home/focht/projects/wine/wine-git/dlls/mshtml/htmlanchor.c:124] in mshtml
(0x00a7a178)

  5 0x7d99d15d HTMLAnchorElement_handle_event+0x16f(iface=0x2aa1f18,
eid=EVENTID_CLICK, event=0x289cfe0, prevent_default=0xa7a200)
[/home/focht/projects/wine/wine-git/dlls/mshtml/htmlanchor.c:693] in mshtml
(0x00a7a1c8)

  6 0x7d9cf105 fire_event_obj+0x678(doc=0x278b530, eid=EVENTID_CLICK,
event_obj=0x285c0f8, target=0x27d1174, script_this=(nil))
[/home/focht/projects/wine/wine-git/dlls/mshtml/htmlevent.c:1183] in mshtml
(0x00a7a2a8)

  7 0x7d9cf34e fire_event+0xd1(doc=0x278b530, eid=EVENTID_CLICK, set_event=0x1,
target=0x27d1174, nsevent=0x289cfe0, script_this=(nil))
[/home/focht/projects/wine/wine-git/dlls/mshtml/htmlevent.c:1233] in mshtml
(0x00a7a2f8)

  8 0x7da37072 handle_htmlevent+0x2bf(iface=<couldn't compute location>,
event=<couldn't compute location>)
[/home/focht/projects/wine/wine-git/dlls/mshtml/nsevents.c:322] in mshtml
(0x00a7a3a8)

  9 0x6a5c318e in xul (+0x98318d) (0x00a7a4a8)
...
  35 0x7eca5098 DialogBoxIndirectParamA+0x4c(hInstance=<couldn't compute
location>, template=<couldn't compute location>, owner=<couldn't compute
location>, dlgProc=<couldn't compute location>, param=<couldn't compute
location>) [/home/focht/projects/wine/wine-git/dlls/user32/dialog.c:902] in
user32 (0x00a7b128)

  36 0x10029494 in ngmdll (+0x29493) (0x00342f30)
  37 0x00000040 (0x000581e8)
--- snip ---

I dumped the embedded resource "Template_Stipulation.html" from
'NGMResource.dll':

--- snip ---
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Nexon Game Manager</title>
    <link rel="stylesheet" type="text/css" href="global.css">
    <script language="javascript">
    function ChangeStipulation(url)
    {
        document.all.StipulationFrame.src = url;
    }
    </script>
</head>
...
<body oncontextmenu="return false;" onselectstart="return false;"
ondragover="return false;" ondrag="return false;">

<!--490/283-->
<div style="width:490px;" id="Container">
    <div><img src="BINARY/round1_top2.gif" width="490" height="5" /></div> 
    <table cellpadding="0" cellspacing="0" class="Wrapper">
    <tr><td>
...
<div id="Cnts2Wrap" style="height:190px;">
<iframe id="StipulationFrame" frameborder="0" scrolling="no" width="453"
height="184" marginheight="0" marginwidth="0" style="margin:2px 0 0
7px;padding:0;" src=""></iframe>
</div>
...
<div id="BtmSec">
<a href="#"><img id="btnAgree" src="BINARY/bt_agree_stip.gif" width="65"
height="23" alt="Agree" /></a>
<a href="#"><img id="btnCancel" src="BINARY/bt_agree_not.gif" width="65"
height="23" alt="Disagree" /></a>    
</div>
...

</div>

</body>
</html>
--- snip ---

The EULA (html) is wrapped within iframe.
The 'buttons' are simple hrefs: '<a href="#"> ...</a>' but there is _no_ hash
id value associated. No javascript code/event wiring.

If I understand this scheme correctly having this single hash '#' means: jump
to the top of the page/anchor on the base href page?

Maybe the missing bits are in between ... additional events from super_navigate
or different kind of frag handling in this case?

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