http://bugs.winehq.org/show_bug.cgi?id=11784
Summary: 3dsmax2008 installer crashes:err:cursor:DIB_GetBitmapInfo (1633746944): unknown/wrong size for header Product: Wine Version: CVS/GIT Platform: PC OS/Version: Linux Status: UNCONFIRMED Keywords: Installer Severity: enhancement Priority: P2 Component: user32 AssignedTo: wine-bugs@winehq.org ReportedBy: xerox_xerox2000@yahoo.co.uk
Hi, after James' patch got into git, the installer gets further, but now crashes like below:
err:cursor:DIB_GetBitmapInfo (1633746944): unknown/wrong size for header err:cursor:DIB_GetBitmapInfo (1633746944): unknown/wrong size for header X Error of failed request: BadValue (integer parameter out of range for operation) Major opcode of failed request: 53 (X_CreatePixmap) Value in failed request: 0x0 Serial number of failed request: 49949 Current serial number in output stream: 49953
PS, I wonder why installers from AutoDesk run into so many bugs; either they are very advanced and put wine to it's limits, or are they just a bit buggy??
http://bugs.winehq.org/show_bug.cgi?id=11784
Dmitry Timoshkov dmitry@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|user32 |winex11.drv
http://bugs.winehq.org/show_bug.cgi?id=11784
--- Comment #1 from Louis Lenders xerox_xerox2000@yahoo.co.uk 2008-04-02 15:19:43 --- Created an attachment (id=11810) --> (http://bugs.winehq.org/attachment.cgi?id=11810) test case
Just a preliminary note : this bug is also present in AutoCad2008Trial and 3dsMax2009Trial.
It looks like the problem is:
001e:Call user32.LoadImageW(00000000,036b567c L"C:\windows\temp\_AIa.tmp\SetupRes\InfoLink\Images\Failed.gif",0000000 0,00000000,00000000,00000010) ret=0034ac71 001e:err:cursor:DIB_GetBitmapInfo (8388608): unknown/wrong size for header
It tries to load a gif-file and then wine crashes. I created very simple test-case to reproduce this crash: just unzip the attached archive in ~/.wine/drive_c\windows\temp (only there), and run the test. You'll see the same crash. The test is just the simplest win32-app you can think if, i only added the following:
WndClsEx.hIcon = (HICON)(LoadImage(0, "c:\windows\temp\Failed.gif", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE));
On windows this test doesn't crash, but in wine it does. I'm not exactly sure now where to fix this bug :(. Any help appreciated.
http://bugs.winehq.org/show_bug.cgi?id=11784
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |testcase
http://bugs.winehq.org/show_bug.cgi?id=11784
Alex Villacís Lasso a_villacis@palosanto.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |a_villacis@palosanto.com
--- Comment #2 from Alex Villacís Lasso a_villacis@palosanto.com 2008-04-04 15:34:32 --- (In reply to comment #1)
WndClsEx.hIcon = (HICON)(LoadImage(0, "c:\windows\temp\Failed.gif", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE));
On windows this test doesn't crash, but in wine it does. I'm not exactly sure now where to fix this bug :(. Any help appreciated.
So what is the expected result in Windows? Should LoadImage actually support GIF (and PNG and JPG and WMF and ...) formats? Or should it just refuse to load anything and return a null handle (or something else), instead of crashing? GIF (and other) support could be ripped from dlls/oleaut32/olepicture.c, *if and only if* LoadImage is demonstrated to support GIF (and other) formats. Tests for olepicture could be adapted for LoadImage to test this. If, on the other hand, LoadImage should refuse to load GIFs without crashing, it should have some validation instead, placed in dlls/user32/cursoricon.c .
In any case, relevant tests should be placed in dlls/user32/tests/cursoricon.c along with the rest of tests.
http://bugs.winehq.org/show_bug.cgi?id=11784
--- Comment #3 from Alex Villacís Lasso a_villacis@palosanto.com 2008-04-04 15:58:48 --- For convenience of tests, please include source code with your test case.
Just tested this on a virtual machine running WinXP-SP2. Program tries to load c:\windows\temp\failed.gif and assign it as a window icon. However, there is no sign that the image (a rectangle with a red cross) is actually used as an icon. For all I see, LoadImage might be refusing to load the GIF image. No way to check with test case, since no source code is provided.
http://bugs.winehq.org/show_bug.cgi?id=11784
Alex Villacís Lasso a_villacis@palosanto.com changed:
What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|wine-bugs@winehq.org |a_villacis@palosanto.com Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1
--- Comment #4 from Alex Villacís Lasso a_villacis@palosanto.com 2008-04-11 10:28:29 --- Created an attachment (id=12064) --> (http://bugs.winehq.org/attachment.cgi?id=12064) Add validation for BMP file format in LoadImage()
This patch is a minimal validation that prevents crashes due to invalid bitmap formats being passed to LoadImage(). Patch already sent to wine-patches.
Changelog: * Add minimal validation in BITMAP_Load (the actual implementation of the LoadImage(IMAGE_BITMAP) flag) that the just-loaded file is in fact a BMP file. Reject and return 0 otherwise. * Tests for rejection of invalid files.
http://bugs.winehq.org/show_bug.cgi?id=11784
Alex Villacís Lasso a_villacis@palosanto.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Difficulty|--- |Hours Keywords| |patch
http://bugs.winehq.org/show_bug.cgi?id=11784
--- Comment #5 from Louis Lenders xerox_xerox2000@yahoo.co.uk 2008-04-11 15:49:54 --- Hi Alex, thanks very much for looking into this. I'll test your patch tomorrow. I guess it works around the crash, and hopefully it will get into git soon. Regards Louis
http://bugs.winehq.org/show_bug.cgi?id=11784
Louis Lenders xerox_xerox2000@yahoo.co.uk changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dominikowski@gmail.com
--- Comment #6 from Louis Lenders xerox_xerox2000@yahoo.co.uk 2008-04-13 14:55:19 --- *** Bug 12562 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=11784
--- Comment #7 from TomaszD dominikowski@gmail.com 2008-04-14 09:33:16 --- I've tested the patch and it fixes the issue in AutoCAD 2008 (full) installer, it no longer crashes.
I ran into a different issue with the installer now (suddenly demands "Disk-1", but it's in the drive), but that is a different problem.
http://bugs.winehq.org/show_bug.cgi?id=11784
Alex Villacís Lasso a_villacis@palosanto.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution| |FIXED
--- Comment #8 from Alex Villacís Lasso a_villacis@palosanto.com 2008-04-14 10:03:18 --- Patch has been commited to current git (0.9.59), so marking as closed fixed. Will probably appear on 0.9.50. A separate bug report should be filed for the next issue in the installer.
http://bugs.winehq.org/show_bug.cgi?id=11784
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #9 from Alexandre Julliard julliard@winehq.org 2008-04-18 11:04:08 --- Closing bugs reported fixed in 0.9.60.
http://bugs.winehq.org/show_bug.cgi?id=11784
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|CVS/GIT |unspecified
https://bugs.winehq.org/show_bug.cgi?id=11784
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |1fcc4ffdfa84dd6d56f7947c43e | |be1d8446b9d8d CC| |focht@gmx.net Component|winex11.drv |user32 Version|unspecified |0.9.56. Severity|enhancement |normal