[Webkit-unassigned] [Bug 42124] New: WebGLBuffer::associateBufferData(ArrayBufferView* array) copies incorrect data for sliced views
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Mon Jul 12 18:13:58 PDT 2010
https://bugs.webkit.org/show_bug.cgi?id=42124
Summary: WebGLBuffer::associateBufferData(ArrayBufferView*
array) copies incorrect data for sliced views
Product: WebKit
Version: 528+ (Nightly build)
Platform: All
OS/Version: All
Status: NEW
Severity: Normal
Priority: P2
Component: WebGL
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: kbr at google.com
CC: oliver at apple.com, fishd at chromium.org,
cmarrin at apple.com, dglazkov at chromium.org,
zmo at google.com
Depends on: 41884
>From code inspection, WebGLBuffer::associateBufferData(ArrayBufferView* array) will copy the wrong data from the passed ArrayBufferView in the case where the WebGLBuffer is bound to the ELEMENT_ARRAY_BUFFER binding point, and the passed ArrayBufferView is a slice of a larger ArrayBuffer with a non-zero offset.
The reason is that the m_elementArrayBuffer is a copy of the entire backing store of the ArrayBufferView (ArrayBuffer::create(array->buffer().get())), but actually needs to be a copy of only the portion referenced by the view.
Ideally, both associateBufferData(ArrayBufferView*) and the new WebGLBuffer::associateBufferData(ArrayBuffer* array) being introduced in bug 41884 would be implemented in terms of an associateBufferDataImpl(ArrayBuffer*, int offset, int length). associateBufferSubData(long, ArrayBufferView*) and associateBufferSubData(long, ArrayBuffer*) should also share their implementations.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list