[4/5] WineD3D: Work around a bad crash in fglrx
Stefan Dösinger
stefan at codeweavers.com
Wed May 6 04:59:27 CDT 2009
Am Mittwoch, 6. Mai 2009 10:10:07 schrieb Henri Verbeet:
> 2009/5/5 Stefan Dösinger <stefan at codeweavers.com>:
> > + * quirk only enables point sprites on the first texture unit. This
> > keeps point sprites working in + * most games, but avoids the crash
>
> ...and on the other ones it will create hard to diagnose / explain
> bugs. Just disabling the extension if it's broken also avoids the
> crash, and will at least have predictable behaviour.
Not in this case. As I explain in a comment in the test, there's no d3d cap
flag for point sprites. So the games will just go ahead and try to do the
same kind of rendering and just fail in the same or worse way.
The only advantage we get from disabling point sprites altogether is the WARN
we get if the game tries to use them. I'll add a similar WARN to the point
sprite function if the game uses them and this workaround is active.
> I also *still* think us working around AMD's bugs is the wrong
> approach.
I agree in general, if this was just a rendering bug I'd put the workaround as
a hack into CrossOver and be happy. However, we're trying to prevent a kernel
panic here, and on the last two Wineconfs we agreed that we should try to
prevent kernel panics while running our d3d tests, even if it is ugly(we have
similar workarounds for old Mesa glDrawPixels / glReadPixels issues). If the
tests crash the systems people will refuse to run them, making them useless.
> Of course it would also help if AMD took these kind of
> things seriously, or at least replied to my posts
> (http://www.phoronix.com/forums/showpost.php?p=63527&postcount=107).
That specific issue is fixed in 9.4 I think. They confirmed the bug and
replied here:
http://ati.cchtml.com/show_bug.cgi?id=1462
(unfortunately no 9.4 for <= r500 cards, so we have to keep our workaround in
directx.c)
More information about the wine-devel
mailing list