[Bug 30447] New: Lexware Financial Office Pro 2012 (v12.0) installer shows an empty dialog window on startup (urlmon.CreateURLMoniker with base context and non-well formed URI, DOS-style path)

wine-bugs at winehq.org wine-bugs at winehq.org
Sun Apr 15 13:45:15 CDT 2012


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

             Bug #: 30447
           Summary: Lexware Financial Office Pro 2012 (v12.0) installer
                    shows an empty dialog window on startup
                    (urlmon.CreateURLMoniker with base context and
                    non-well formed URI, DOS-style path)
           Product: Wine
           Version: 1.5.2
          Platform: x86
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: urlmon
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: focht at gmx.net
    Classification: Unclassified


Hello,

the installer of Lexware Financial Office Pro 2012 v12.0 shows an empty dialog
with nothing to navigate.
Using a window/message spy (Winspector) and trace log one can see this dialog
window actually embeds a flash player ActiveX control.
No 'flash' prerequisite needed, the installer ships its own.

'winetricks -q ie7' works around, the flash window content is shown.

After reducing the dependencies created by IE7 one by one, native urlmon seems
the culprit.
Relevant trace log:

--- snip ---
...
0026:Call urlmon.CreateURLMoniker(001b4118,001b4024 L"C:\\users\\focht\\Local
Settings\\Application Data\\Lexware\\LxSetupTemp\\LxSetupConfig.xml",0033e698)
ret=1000406a
0026:trace:urlmon:CreateURLMonikerEx (0x1b4118, L"C:\\users\\focht\\Local
Settings\\Application Data\\Lexware\\LxSetupTemp\\LxSetupConfig.xml", 0x33e698,
00000000)
0026:trace:urlmon:URLMoniker_QueryInterface (0x1b4118)->(IID_IUriContainer
0x33e33c)
0026:trace:urlmon:URLMoniker_AddRef (0x1b4118) ref=2
0026:trace:urlmon:UriContainer_GetIUri (0x1b4118)->(0x33e344)
0026:trace:urlmon:Uri_AddRef (0x164b20) ref=2
0026:trace:urlmon:URLMoniker_Release (0x1b4118) ref=1
0026:trace:urlmon:CoInternetCombineUrlEx (0x164b20 L"C:\\users\\focht\\Local
Settings\\Application Data\\Lexware\\LxSetupTemp\\LxSetupConfig.xml" 10000
0x33e348 0) stub
0026:trace:urlmon:Uri_QueryInterface (0x164b20)->(IID_IUriObj 0x33d248)
0026:trace:urlmon:parse_schema (L"file://C:\\Program Files\\Common
Files\\Lexware\\Setup\\financial_office_pro\\FlashMovie\\Setup.swf" 00000000
0x33d1c0 64 0x33d1bc)
0026:trace:urlmon:CreateUri (L"C:\\users\\focht\\Local Settings\\Application
Data\\Lexware\\LxSetupTemp\\LxSetupConfig.xml" 1 0 0x33e2e0)
...
0026:trace:urlmon:Uri_Construct ((nil) 0x33d224)
...
0026:trace:urlmon:parse_uri (0x33d15c 4b41): BEGINNING TO PARSE URI
L"C:\\users\\focht\\Local Settings\\Application
Data\\Lexware\\LxSetupTemp\\LxSetupConfig.xml".
0026:trace:urlmon:parse_scheme (0x33d108 0x33d15c 4b41): URI is implicitly a
file path, but, the ALLOW_IMPLICIT_FILE_SCHEME flag wasn't set.
0026:trace:urlmon:Uri_Release (0x153850) ref=0
...
0026:trace:urlmon:Uri_Release (0x164b20) ref=1
0026:Ret  urlmon.CreateURLMoniker() retval=80070057 ret=1000406a
...
--- snip ---

Debugging session:

--- snip ---
$ pwd
/home/focht/.wine/drive_c/Program Files/Common
Files/Lexware/Setup/financial_office_pro
...
$ winedbg LxSetup.exe
...
Wine-dbg>bt
Backtrace:
=>0 0x7ec3e720 CoInternetCombineUrlEx+0x16a(pBaseUri=0x18fd98,
pwzRelativeUrl="C:\users\focht\Local Settings\Application
Data\Lexware\LxSetupTemp\LxSetupConfig.xml", dwCombineFlags=0x10000,
ppCombinedUri=0x33e4dc, dwReserved=0)
[/home/focht/projects/wine/wine-git/dlls/urlmon/uri.c:6783] in urlmon
(0x0033e49c)
  1 0x7ec2aee7 CreateURLMonikerEx+0x1b0(pmkContext=0x18fe28,
szURL="C:\users\focht\Local Settings\Application
Data\Lexware\LxSetupTemp\LxSetupConfig.xml", ppmk=0x33e7a4, dwFlags=0)
[/home/focht/projects/wine/wine-git/dlls/urlmon/umon.c:633] in urlmon
(0x0033e4fc)
  2 0x7ec2b1ea CreateURLMoniker+0x32(pmkContext=0x18fe28,
szURL="C:\users\focht\Local Settings\Application
Data\Lexware\LxSetupTemp\LxSetupConfig.xml", ppmk=0x33e7a4)
[/home/focht/projects/wine/wine-git/dlls/urlmon/umon.c:719] in urlmon
(0x0033e51c)
  3 0x1000406a in flashplayercontrol (+0x4069) (0x0033e624)
  4 0x7bc33499 interlocked_dec+0x18(dest=0x110064)
[/home/focht/projects/wine/wine-git/dlls/ntdll/critsection.c:50] in ntdll
(0x0033e634)
  5 0x7bc3400d RtlLeaveCriticalSection+0x52(crit=0x110060)
[/home/focht/projects/wine/wine-git/dlls/ntdll/critsection.c:624] in ntdll
(0x0033e654)
Wine-dbg>n
6784        if(info) {
Wine-dbg>n
6798        hr = CreateUri(pwzRelativeUrl, Uri_CREATE_ALLOW_RELATIVE, 0,
&relative);
Wine-dbg>n
6799        if(FAILED(hr)) {
Wine-dbg>n
6800            *ppCombinedUri = NULL;
Wine-dbg>n
6801            return hr;

Wine-dbg>p hr
0x80070057
--- snip ---

It seems it doesn't like this kind of "DOS" style URI in conjunction with a
base context (first parameter).

There is another case in trace log with base context but with well formed URI
that succeeds:

--- snip ---
0026:Call urlmon.CreateURLMoniker(001b4110,001b3d64
L"file:///C|/Program%20Files/Common%20Files/Lexware/Setup/financial%5Foffice%5Fpro/FlashMovie/Setup.swf",0033e350)
ret=1000406a
...
0026:trace:urlmon:Uri_GetPropertyBSTR (0x1b4508
L"file:///C:/Program%20Files/Common%20Files/Lexware/Setup/financial_office_pro/FlashMovie/Setup.swf")->(2
0x1b4208 0) 
...
0026:Ret  urlmon.CreateURLMoniker() retval=00000000 ret=1000406a 
--- snip ---

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