st/dri: fix crash when dri2_drawable_get_buffers fails

It's easily reproducible with Compiz with its Resize window mode
set to Normal (which is usually not the default mode).

https://bugs.freedesktop.org/show_bug.cgi?id=28658
https://bugs.freedesktop.org/show_bug.cgi?id=29303

This is actually a workaround to prevent Compiz crashes.
Instead, a completely white titlebar might show up during resizing
transparent windows (a rare case).

The underlying cause should be fixed by someone who has more knowledge
about the code. (dri2_drawable_get_buffers should not return NULL)

Acked-By: Jakob Bornecrantz <jakob@vmware.com>
This commit is contained in:
Marek Olšák 2010-07-31 02:19:27 +02:00
parent 0614006d09
commit afbf446de5
1 changed files with 2 additions and 1 deletions

View File

@ -351,7 +351,8 @@ dri2_allocate_textures(struct dri_drawable *drawable,
unsigned num_buffers = count;
buffers = dri2_drawable_get_buffers(drawable, statts, &num_buffers);
dri2_drawable_process_buffers(drawable, buffers, num_buffers);
if (buffers)
dri2_drawable_process_buffers(drawable, buffers, num_buffers);
}
static void