* due to out of bounds dimensions, and then mistakenly set
* sprites_are_broken:
*/
- uint32_t min_width, max_width;
- uint32_t min_height, max_height;
+ int32_t min_width, max_width;
+ int32_t min_height, max_height;
struct wl_list sprite_list;
int sprites_are_broken;
struct drm_compositor *c =(struct drm_compositor *) ec;
struct drm_output *output = (struct drm_output *) output_base;
struct drm_sprite *s;
- int32_t width, height;
int ret;
wl_list_for_each(s, &c->sprite_list, link) {
pixman_box32_t *box;
uint32_t format;
wl_fixed_t sx1, sy1, sx2, sy2;
+ int32_t width, height;
if (c->sprites_are_broken)
return NULL;
*/
if (c->min_width > width || width > c->max_width ||
c->min_height > height || height > c->max_height)
- return -1;
+ return NULL;
bo = gbm_bo_import(c->gbm, GBM_BO_IMPORT_WL_BUFFER,
es->buffer, GBM_BO_USE_SCANOUT);
drm_output_prepare_cursor_surface(struct weston_output *output_base,
struct weston_surface *es)
{
+ struct drm_compositor *c =
+ (struct drm_compositor *) output_base->compositor;
struct drm_output *output = (struct drm_output *) output_base;
if (output->cursor_surface)
if (es->output_mask != (1u << output_base->id))
return NULL;
if (c->cursors_are_broken)
- return;
+ return NULL;
if (es->buffer == NULL || !wl_buffer_is_shm(es->buffer) ||
es->geometry.width > 64 || es->geometry.height > 64)
return NULL;