From: <bug...@fr...> - 2008-09-21 07:43:43
|
http://bugs.freedesktop.org/show_bug.cgi?id=16520 Guillaume Melquiond <gui...@gm...> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #19013|0 |1 is obsolete| | --- Comment #21 from Guillaume Melquiond <gui...@gm...> 2008-09-21 00:42:44 PST --- Created an attachment (id=19048) --> (http://bugs.freedesktop.org/attachment.cgi?id=19048) Fix random-colored / white overlays. Here is the latest iteration of my patch. It avoids an undefined input value from being used in insert_3f_viewport_2. It clears the vertex buffer beforehand in the hardwired and in the generic case. In the SSE code, it enables the EMIT_3UB_3F code that was disabled by a typo. It fixes the EMIT_1UB_1F case that was duplicating its value over the previous padding bytes. It speeds up the load2F_1 function. It fixes the load3f_* function so that the last component is not a spurious 1 that would be written as a padding byte in the 3UB+PAD1 case. It fixes the 3UB+1UB case by using a second temporary register so that the color contained in the first one is not destroyed while loading the next component. Unfortunately, I doubt the patch will fix your remaining issue, as it may be somewhere else. (One part of the code is still reading bytes it shouldn't. For now, I have fixed the case where it reads the padding bytes. But if it also reads non padding-bytes or bytes outside the buffer, the same bug will still happen.) You may still give it a go, as now it also clears the buffer in the third path, the hardwired one. Your bug may not be related to the fog setting, as it may only change the layout of the vertex buffer, hence causing other bytes to be read by the buggy code. But at least it may give us a clue at which specific part of the buffer is affected, and hence which code is using it. Hopefully. As for your webserver, it now works. I haven't had time to play with it yet though. -- Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. |