http://bugs.winehq.org/show_bug.cgi?id=17338
Summary: Quicken 2007 Home & Business crashes with X Error "BadLength" Product: Wine Version: 1.1.14 Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: critical Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: tim@filmchicago.org
OS: Ubuntu 8.10 Wine: 1.1.14 installed using the WineHQ APT repository for Ubuntu 8.10 Intrepid Machine: Dell Latitude D800, 1.5GB RAM, 40GB HD, Nvidia Geforce Go5200
I have installed Quicken 2007 Home & Business. The installation went fine and the application starts up; however, when Quicken attempts to open a data file, it crashes with the error:
"X Error of failed request: BadLength (poly request too large or internal Xlib length error) Major opcode of failed request: 155 (RENDER) Minor opcode of failed request: 20 (RenderAddGlyphs) Serial number of failed request: 27942 Current serial number in output stream: 28247"
Steps to reproduce: 1. Install Quicken 2007 Home & Business 2. Use the updater during the install process to update Quicken to the latest version. 3. After the install completes, start Quicken with Wine. 4. At the Welcome screen, select "I am new to Quicken" 5. Use the default file name and location for the data file. 6. When Quicken creates the data file, Quicken will crash and close with no warning dialogues.
-This error also occurs if you select "I am already a Quicken user" at the Welcome screen and attempt to load a pre-existing Quicken data file.
Observing the output of WINEDEBUG with Trace enabled, it is obvious that Quicken successfully loads and reads the data file. The crash appears to occur when Quicken attempts to draw the main application once the data has been loaded.
The file "Quicken_Short_Log.txt" contains the output of just running Quicken with: "wine qw.exe"
I'll upload a longer trace log later, but I seem to have misplaced it at the moment.
http://bugs.winehq.org/show_bug.cgi?id=17338
--- Comment #1 from Tim Mertens tim@filmchicago.org 2009-02-10 19:03:56 --- Created an attachment (id=19371) --> (http://bugs.winehq.org/attachment.cgi?id=19371) Short quicken log
http://bugs.winehq.org/show_bug.cgi?id=17338
Dan Kegel dank@kegel.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dank@kegel.com
--- Comment #2 from Dan Kegel dank@kegel.com 2009-02-10 21:14:39 --- When tracking down X errors, please use +synchronous in WINEDEBUG so the error shows up properly in the log...
Is this with the nv or the nvidia driver? Try it with the other one and see if that makes any difference.
http://bugs.winehq.org/show_bug.cgi?id=17338
Dmitry Timoshkov dmitry@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Severity|critical |normal
--- Comment #3 from Dmitry Timoshkov dmitry@codeweavers.com 2009-02-10 22:03:40 --- http://bugs.winehq.org/page.cgi?id=fields.html#bug_severity
http://bugs.winehq.org/show_bug.cgi?id=17338
--- Comment #4 from Tim Mertens tim@filmchicago.org 2009-02-10 22:47:11 --- Created an attachment (id=19374) --> (http://bugs.winehq.org/attachment.cgi?id=19374) Wine debug log with the +syncronous flag enabled.
The "Quicken Syncronous log.txt" file contains logging info from the point when I click "OK" to open the file, until the crash which occurs immediately afterward.
http://bugs.winehq.org/show_bug.cgi?id=17338
--- Comment #5 from Dan Kegel dank@kegel.com 2009-02-10 23:03:30 --- That line Locking assertion failure sounds like you've hit https://bugs.launchpad.net/xorg-server/+bug/185311 Does launching quicken in a terminal with the following setting
export LIBXCB_ALLOW_SLOPPY_LOCK=1 wine quicken.exe
help?
http://bugs.winehq.org/show_bug.cgi?id=17338
--- Comment #6 from Tim Mertens tim@filmchicago.org 2009-02-10 23:03:57 --- Created an attachment (id=19375) --> (http://bugs.winehq.org/attachment.cgi?id=19375) Quicken log with +syncronous flag using nv driver.
The original log was using the nvidia driver version 173. This log is with the nvidia driver disabled (using nv). Both logs are nearly identical, but I uploaded both because there are very small differences between the two.
When using the syncronous flag rather than the application simply closing, it hangs when the error occurs. If I try to close the window, a message is displayed saying:
"A simulated log-off or shutdown is in progress, but the program isn't responding. If you terminate the process you may lose all unsaved data."
Obviously the process must be terminated to close it. No biggie, I expect this is just wine saying something is wrong and it's trying to kill the app.
It is running in a 800x600 virtual desktop, but the behavior is the same w/o the virtual desktop.
http://bugs.winehq.org/show_bug.cgi?id=17338
--- Comment #7 from Tim Mertens tim@filmchicago.org 2009-02-10 23:29:59 --- (In reply to comment #5)
That line Locking assertion failure sounds like you've hit https://bugs.launchpad.net/xorg-server/+bug/185311 Does launching quicken in a terminal with the following setting
export LIBXCB_ALLOW_SLOPPY_LOCK=1 wine quicken.exe
help?
Unfortunately, no. I also tried "sudo sed -i 's/XINERAMA/FAKEEXTN/g' /usr/lib/jvm/java-6-openjdk/jre/lib/i386/xawt/libmawt.so" as mentioned in that same thread but that did not help either.
http://bugs.winehq.org/show_bug.cgi?id=17338
--- Comment #8 from Tim Mertens tim@filmchicago.org 2009-02-11 14:32:20 ---
From that same thread, I tried installing the noxcb LIBx11 version using the
instructions/script in this post:
https://bugs.launchpad.net/ubuntu-mobile/+bug/185311/comments/159
But the same error occurs when I run quicken with this command:
LD_LIBRARY_PATH=/opt/LIBx11-noxcb/lib:$LD_LIBRARY_PATH wine qw.exe
Is it possible there is something else going on? Are there other debug options I should use to gather more information about this error?
http://bugs.winehq.org/show_bug.cgi?id=17338
--- Comment #9 from Tim Mertens tim@filmchicago.org 2009-02-11 21:12:10 --- Created an attachment (id=19398) --> (http://bugs.winehq.org/attachment.cgi?id=19398) Quicken +synchronous log with ATI gfx card and driver
It appears that this error is not driver/video card related. I tried this again today on another computer running Ubuntu 8.10, Wine 1.1.14 with a much newer ATI graphics card (the exact model escapes me at the moment). The ATI FGLRX proprietary driver is installed and it's running 64-bit Ubuntu, but that doesn't seem to be causing any problems.
The error message is nearly identical to the others. This indicates to me that there is either a bug in Wine or in libxcb (as the launchpad bug seems to be, but none of the workarounds seem to work for me), not in the nvidia drivers.
http://bugs.winehq.org/show_bug.cgi?id=17338
--- Comment #10 from Dan Kegel dank@kegel.com 2009-02-11 21:23:24 --- You might get the wine debug symbols (either by installing the -dev package, or by building from source) so that your backtrace is more useful.
http://bugs.winehq.org/show_bug.cgi?id=17338
--- Comment #11 from Tim Mertens tim@filmchicago.org 2009-02-11 23:15:11 --- Created an attachment (id=19400) --> (http://bugs.winehq.org/attachment.cgi?id=19400) Quicken log with xrender flag
I'm not sure what you mean by debug symbols - I installed the -dev package and the assertion error still looks the same, but I did find these bug reports interesting:
http://bugs.freedesktop.org/show_bug.cgi?id=6019 http://bugs.freedesktop.org/show_bug.cgi?id=13479
And also noticed when I ran Quicken with the flags: WINEDEBUG=+font,+xrender,+xrandr,+synchronous wine qw.exe
immediately prior to the assertion error are the lines: "trace:xrender:UploadGlyph buflen = 393216. Got metrics: 262144x12 adv=0,0 origin=-294912,12 trace:xrender:UploadGlyph trace:xrender:UploadGlyph trace:xrender:UploadGlyph trace:xrender:UploadGlyph trace:xrender:UploadGlyph trace:xrender:UploadGlyph trace:xrender:UploadGlyph trace:xrender:UploadGlyph trace:xrender:UploadGlyph trace:xrender:UploadGlyph trace:xrender:UploadGlyph trace:xrender:UploadGlyph "
Where every other instance of UploadGlyph in the log looks like this: "trace:xrender:UploadGlyph buflen = 32. Got metrics: 8x8 adv=12,0 origin=2,10 trace:xrender:UploadGlyph ## ## trace:xrender:UploadGlyph ### ### trace:xrender:UploadGlyph ###### trace:xrender:UploadGlyph #### trace:xrender:UploadGlyph #### trace:xrender:UploadGlyph ###### trace:xrender:UploadGlyph ### ### trace:xrender:UploadGlyph ## ## trace:xrender:X11DRV_XRender_ExtTextOut Writing L"\001f" at 266,18"
Taking a look at the original error, without +synchronous "X Error of failed request: BadLength (poly request too large or internal Xlib length error) Major opcode of failed request: 156 (RENDER) Minor opcode of failed request: 20 (RenderAddGlyphs) Serial number of failed request: 19881 Current serial number in output stream: 20175"
It looks like it's trying to render the Glyphs but it is probably failing to do so. Maybe I'm completely wrong, but as far as I can tell, this appears to be more related to the bugs linked above than the original xcb error we were looking at.
The question then is whether this is something that can be fixed in Wine somehow (maybe there's a font with mixed outlines/bitmaps?) or if it is purely an xlib issue.
http://bugs.winehq.org/show_bug.cgi?id=17338
--- Comment #12 from Tim Mertens tim@filmchicago.org 2009-02-12 22:42:00 --- Ok, I haven't completely solved this yet, but I think i'm getting closer...
I am betting that the "BadLength" error is caused by this line:
"trace:xrender:UploadGlyph buflen = 393216. Got metrics: 262144x12 adv=0,0 origin=-294912,12"
The buflen is probably the cause of the error, but "Got metrics" seems way off, too. All other instances in the log have a buflen between 24-36, give or take a little, and Got metrics more like 6x9 or in low denominations around there.
The origin also seems odd, but I think buflen is the first problem that needs to be addressed. I suppose the next task is to trace that back and see where the odd values are coming from.
http://bugs.winehq.org/show_bug.cgi?id=17338
--- Comment #13 from Tim Mertens tim@filmchicago.org 2009-02-12 22:55:48 --- Additionally, digging a little more in the log I noticed another oddity:
"trace:font:WineEngGetTextExtentExPoint 0x3338e10, L"Feb 2009", 8, 0, 0x3241cc trace:font:WineEngGetGlyphOutline 0x3338e10, 002b, 00000080, 0x323f58, 00000000, (nil), (nil) trace:font:WineEngGetGlyphOutline font transform 1.000000 0.000000 0.000000 1.000000 trace:font:WineEngGetGlyphOutline Vec 64,768 trace:font:WineEngGetGlyphOutline Vec 64,0 trace:font:WineEngGetGlyphOutline Vec 576,768 trace:font:WineEngGetGlyphOutline Vec 576,0"
This area just before the hang is the only point in the log where the line "WineEngGetGlyphOutline font transform 1.000000 0.000000 0.000000 1.000000" is followed by the four lines of: "trace:font:WineEngGetGlyphOutline Vec $x,$y" This appears several times before it actually tries to execute UploadGlyph.
Normally, it looks like this: "trace:font:WineEngGetGlyphOutline font transform 1.000000 0.000000 0.000000 1.000000 trace:font:WineEngGetGlyphOutline 1,10,(1,10),3,0"
So the question to ask is why does WineEngGetGlyphOutline have a problem in this particular instance and not in the rest of the log?
http://bugs.winehq.org/show_bug.cgi?id=17338
Tim Mertens tim@filmchicago.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|1.1.14 |1.1.15
--- Comment #14 from Tim Mertens tim@filmchicago.org 2009-02-19 17:02:44 --- Still reproduces in 1.1.15
http://bugs.winehq.org/show_bug.cgi?id=17338
Vitaliy Margolen vitaliy@kievinfo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|1.1.15 |1.1.14
--- Comment #15 from Vitaliy Margolen vitaliy@kievinfo.com 2009-02-19 22:26:55 --- Don't change Wine version.
http://bugs.winehq.org/show_bug.cgi?id=17338
Tim Mertens tim@filmchicago.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |FIXED
--- Comment #16 from Tim Mertens tim@filmchicago.org 2009-04-25 09:28:35 --- Hooray! This is fixed after updating to Ubuntu 9.04 and Wine "1.1.20~winehq0~ubuntu~9.04~0ubuntu1"
http://bugs.winehq.org/show_bug.cgi?id=17338
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #17 from Alexandre Julliard julliard@winehq.org 2009-05-08 12:50:15 --- Closing bugs fixed in 1.1.21.