compositor-drm: Don't do a mode set on drm_output_switch_mode()

At this point, we reallocated the gbm surface, but we don't have an
fb with the right size to use. If we're going to a larger mode, the fb
would be too small and the mode set would fail. Besides, the repaint
logic will already do a mode set if necessary, so rely on that instead.
Ander Conselvan de Oliveira 12 years ago committed by Kristian Høgsberg
parent 2e7a3ab7cd
commit f1c38a7426
  1. 11
      src/compositor-drm.c

@ -1008,15 +1008,6 @@ drm_output_switch_mode(struct weston_output *output_base, struct weston_mode *mo
goto err_gbm;
}
ret = drmModeSetCrtc(ec->drm.fd,
output->crtc_id,
output->current->fb_id, 0, 0,
&output->connector_id, 1, &drm_mode->mode_info);
if (ret) {
weston_log("failed to set mode\n");
goto err_gl;
}
/* reset rendering stuff. */
if (output->current) {
if (output->current->is_client_buffer)
@ -1043,8 +1034,6 @@ drm_output_switch_mode(struct weston_output *output_base, struct weston_mode *mo
output->base.current = &drm_mode->base;
return 0;
err_gl:
gl_renderer_output_destroy(&output->base);
err_gbm:
gbm_surface_destroy(surface);
return -1;

Loading…
Cancel
Save