Am Sonntag, 9. September 2007 17:10:39 schrieb Martin: That patch is not correct
Are you sure that this patch really causes a problem? If you are running the game in winedbg and get an exception there it is a symptom of the DIB management in winex11.drv. You can just use "pass" to pass the exception up to the next handler(winex11.drv). The exception never reaches the app.
If you really get a crash there then This->resource.allocatedMemory is pointing to a bad location, most likely NULL. This is a problem at some other place and should be fixed elsewhere.
This read is a hack to work around a bug in the open source ati driver which caused a hard system crash if an exception occured during glDrawPixels. You can remove hack as a whole if it really causes problems, but this will cause hard crashes for a wide range of radeon drivers(xorg 6.8 and 7.0 at least). I think it is fixed in the latest version, but I am not sure, I'd have to test that. Since the hack is confined in one single function and doesn't have any side effects I decided to keep it.