[Bug 38959] New: Microsoft .NET Framework 4.6 web installer fails silently (unable to load series of compressed PNG icon images from ICO files)

wine-bugs at winehq.org wine-bugs at winehq.org
Tue Jul 21 15:14:04 CDT 2015


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

            Bug ID: 38959
           Summary: Microsoft .NET Framework 4.6 web installer fails
                    silently (unable to load series of compressed PNG icon
                    images from ICO files)
           Product: Wine
           Version: 1.7.47
          Hardware: x86-64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: user32
          Assignee: wine-bugs at winehq.org
          Reporter: focht at gmx.net
      Distribution: ---

Hello folks,

as the summary says.

Prerequisite: WINEPREFIX Windows version set to 'Windows Vista' or higher.

Unwrapped the inner installer for easier reproduce.

Trace log:

--- snip ---
$ WINEDEBUG=+tid,+seh,+relay,+msi,+resource,+icon,+cursor wine ./Setup.exe /x86
/x64 /web >>log.txt 2>&1
...
0034:Call user32.LoadImageW(00000000,00e228e0
L"Z:\\home\\focht\\Downloads\\installer\\graphics\\Rotate1.ico",00000001,00000000,00000000,00000010)
ret=0039967e
0034:trace:resource:LoadImageW
((nil),L"Z:\\home\\focht\\Downloads\\installer\\graphics\\Rotate1.ico",1,0,0,0x00000010)
0034:trace:cursor:CURSORICON_Load (nil),
L"Z:\\home\\focht\\Downloads\\installer\\graphics\\Rotate1.ico", 0x0, depth 32,
fCursor 0, flags 0x0010
0034:trace:cursor:CURSORICON_LoadFromFile loading
L"Z:\\home\\focht\\Downloads\\installer\\graphics\\Rotate1.ico"
0034:warn:cursor:create_icon_from_bmi invalid header size 1196314761
0034:trace:cursor:CURSORICON_LoadFromFile loaded
L"Z:\\home\\focht\\Downloads\\installer\\graphics\\Rotate1.ico" -> (nil)
0034:Ret  user32.LoadImageW() retval=00000000 ret=0039967e
...
0034:Call user32.LoadImageW(00000000,00e228e0
L"Z:\\home\\focht\\Downloads\\installer\\graphics\\Rotate10.ico",00000001,00000000,00000000,00000010)
ret=0039967e
0034:trace:resource:LoadImageW
((nil),L"Z:\\home\\focht\\Downloads\\installer\\graphics\\Rotate10.ico",1,0,0,0x00000010)
0034:trace:cursor:CURSORICON_Load (nil),
L"Z:\\home\\focht\\Downloads\\installer\\graphics\\Rotate10.ico", 0x0, depth
32, fCursor 0, flags 0x0010
0034:trace:cursor:CURSORICON_LoadFromFile loading
L"Z:\\home\\focht\\Downloads\\installer\\graphics\\Rotate10.ico"
0034:warn:cursor:create_icon_from_bmi invalid header size 1196314761
0034:trace:cursor:CURSORICON_LoadFromFile loaded
L"Z:\\home\\focht\\Downloads\\installer\\graphics\\Rotate10.ico" -> (nil)
0034:Ret  user32.LoadImageW() retval=00000000 ret=0039967e
...
0034:Call KERNEL32.RaiseException(c000008c,00000001,00000000,00000000)
ret=003995ac
0034:trace:seh:raise_exception code=c000008c flags=1 addr=0x7b845ccd
ip=7b845ccd tid=0034
0034:trace:seh:raise_exception  eax=7b832afd ebx=00000000 ecx=01ede830
edx=00000001 esi=01ede874 edi=01ede840
0034:trace:seh:raise_exception  ebp=01ede818 esp=01ede7b4 cs=0023 ds=002b
es=002b fs=0063 gs=006b flags=00200246
0034:trace:seh:call_stack_handlers calling handler at 0x100a52df code=c000008c
flags=1
--- snip ---

It fails to load series of compressed PNG images embedded in ICO images.
This is a feature that is supported on Windows Vista or higher.

--- quote ---
Windows Vista added a 256×256-pixel icon view to Windows Explorer, as well as
support for the compressed PNG format. Although compression is not required,
Microsoft recommends that all 256×256 icons in ICO files should be stored in
PNG format to reduce the overall size of the file.[7] The Windows Vista
Explorer supports smoothly scaling icons to non-standard sizes which are
rendered on the fly even if an image is not present for that size in the icon
file. The Windows Vista shell adds a slider for "zooming" the icon sizes in and
out. With users using higher resolutions and high DPI modes, larger icon
formats (such as 256×256) are recommended.[7]
--- quote ---

Image properties:

--- snip ---
installer/Graphics>$ file *

Print.ico:        MS Windows icon resource - 19 icons, 256x256, 16 colors
Rotate10.ico:     MS Windows icon resource - 19 icons, 256x256, 16 colors
Rotate1.ico:      MS Windows icon resource - 19 icons, 256x256, 16 colors
Rotate2.ico:      MS Windows icon resource - 19 icons, 256x256, 16 colors
Rotate3.ico:      MS Windows icon resource - 19 icons, 256x256, 16 colors
Rotate4.ico:      MS Windows icon resource - 19 icons, 256x256, 16 colors
Rotate5.ico:      MS Windows icon resource - 19 icons, 256x256, 16 colors
Rotate6.ico:      MS Windows icon resource - 19 icons, 256x256, 16 colors
Rotate7.ico:      MS Windows icon resource - 19 icons, 256x256, 16 colors
Rotate8.ico:      MS Windows icon resource - 19 icons, 256x256, 16 colors
Rotate9.ico:      MS Windows icon resource - 19 icons, 256x256, 16 colors
Save.ico:         MS Windows icon resource - 19 icons, 256x256, 16 colors
Setup.ico:        MS Windows icon resource - 19 icons, 256x256, 16 colors
stop.ico:         MS Windows icon resource - 36 icons, 256x256, 16 colors
SysReqMet.ico:    MS Windows icon resource - 19 icons, 256x256, 16 colors
SysReqNotMet.ico: MS Windows icon resource - 19 icons, 256x256, 16 colors
warn.ico:         MS Windows icon resource - 36 icons, 256x256, 16 colors

installer/Graphics>$ identify Rotate1.ico

Rotate1.ico[0] ICO 256x256 256x256+0+0 8-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[1] ICO 48x48 48x48+0+0 4-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[2] ICO 32x32 32x32+0+0 4-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[3] ICO 24x24 24x24+0+0 4-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[4] ICO 16x16 16x16+0+0 4-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[5] ICO 256x256 256x256+0+0 8-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[6] ICO 48x48 48x48+0+0 8-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[7] ICO 32x32 32x32+0+0 8-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[8] ICO 24x24 24x24+0+0 8-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[9] ICO 16x16 16x16+0+0 8-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[10] ICO 256x256 256x256+0+0 8-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[11] ICO 128x128 128x128+0+0 32-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[12] ICO 64x64 64x64+0+0 32-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[13] ICO 48x48 48x48+0+0 32-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[14] ICO 40x40 40x40+0+0 32-bit sRGB 144KB 0.000u 0:00.009
Rotate1.ico[15] ICO 32x32 32x32+0+0 32-bit sRGB 144KB 0.000u 0:00.000
Rotate1.ico[16] ICO 24x24 24x24+0+0 32-bit sRGB 144KB 0.000u 0:00.000
Rotate1.ico[17] ICO 20x20 20x20+0+0 32-bit sRGB 144KB 0.000u 0:00.000
Rotate1.ico[18] ICO 16x16 16x16+0+0 32-bit sRGB 144KB 0.000u 0:00.000
--- snip ---

$ sha1sum NDP46-KB3045560-Web.exe 
480ca134b9e3f2437df10719d5a8c77ddec0a4f1  NDP46-KB3045560-Web.exe

$ du -sh NDP46-KB3045560-Web.exe 
1.5M    NDP46-KB3045560-Web.exe

$ wine --version
wine-1.7.47-162-g0f9a0aa

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