RESOLVED FIXED41092
Index validation caches buffer size information too aggressively
https://bugs.webkit.org/show_bug.cgi?id=41092
Summary Index validation caches buffer size information too aggressively
Kenneth Russell
Reported 2010-06-23 12:14:26 PDT
Gregg Tavares discovered that the index validation code is caching buffer size information too aggressively. If vertexAttribPointer is called with a given buffer which is not large enough to cover a given draw call, but is subsequently resized via bufferData, the draw call is failing rather than succeeding.
Attachments
Patch (11.93 KB, patch)
2010-06-23 19:46 PDT, Kenneth Russell
dglazkov: review+
kbr: commit-queue-
Kenneth Russell
Comment 1 2010-06-23 19:46:48 PDT
Created attachment 59605 [details] Patch From the ChangeLog: Do not cache the buffer size during vertexAttribPointer, only the attributes used to compute the number of required elements. Compute the number of valid elements each time based on the latched buffer. Tested in Safari and Chromium on Mac OS X in both debug and release mode to ensure no performance regressions.
Gregg Tavares
Comment 2 2010-06-25 09:19:18 PDT
LGTM
Dimitri Glazkov (Google)
Comment 3 2010-06-25 14:33:08 PDT
Comment on attachment 59605 [details] Patch ok.
Kenneth Russell
Comment 4 2010-06-28 10:42:00 PDT
Kenneth Russell
Comment 5 2010-06-28 10:43:48 PDT
Note that the patch landed was slightly different than the one reviewed due to merging with the fix for https://bugs.webkit.org/show_bug.cgi?id=41108 .
Note You need to log in before you can comment on or make changes to this bug.