[Mesa-dev] [PATCH] nv50: fix a SIGSEGV with piglit bin/gl-3.1-vao-broken-attrib
Ilia Mirkin
imirkin at alum.mit.edu
Mon Jul 6 16:51:46 PDT 2015
On Mon, Jul 6, 2015 at 7:50 PM, Dylan Baker <baker.dylan.c at gmail.com> wrote:
> On Mon, Jul 06, 2015 at 11:34:23PM +0200, Samuel Pitoiset wrote:
>> Before validating vertex arrays we need to check if a VBO is present.
>> Checking if vb->buffer is not NULL fixes the issue.
>>
>> Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
>> ---
>> src/gallium/drivers/nouveau/nv50/nv50_vbo.c | 5 +++++
>> 1 file changed, 5 insertions(+)
>>
>> diff --git a/src/gallium/drivers/nouveau/nv50/nv50_vbo.c b/src/gallium/drivers/nouveau/nv50/nv50_vbo.c
>> index 1fd33b8..3d200bd 100644
>> --- a/src/gallium/drivers/nouveau/nv50/nv50_vbo.c
>> +++ b/src/gallium/drivers/nouveau/nv50/nv50_vbo.c
>> @@ -382,6 +382,11 @@ nv50_vertex_arrays_validate(struct nv50_context *nv50)
>> if (nv50->vbo_user & (1 << b)) {
>> address = addrs[b] + ve->pipe.src_offset;
>> limit = addrs[b] + limits[b];
>> + } else
>> + if (!vb->buffer) {
>
> Should the else and if be on the same line?
The general style elsewhere is to do it in this weird way. Can't say
I'm a big fan, but I prefer consistency.
I'd happily take a change that undid that oddity.
>
>> + BEGIN_NV04(push, NV50_3D(VERTEX_ARRAY_FETCH(i)), 1);
>> + PUSH_DATA (push, 0);
>> + continue;
>> } else {
>> struct nv04_resource *buf = nv04_resource(vb->buffer);
>> if (!(refd & (1 << b))) {
>> --
>> 2.4.5
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
More information about the mesa-dev
mailing list