X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Ftdm_server.c;h=453e10e4bf7ad7fcf1147e4fcce5e11a5515b283;hb=fed869744d5e1d1939c39a8fda793aa0caee6cc1;hp=a71eb0eecb16d6f83717224eb68a6073ec807f10;hpb=e21703af4902508822f6c9942b94496da4e4342e;p=platform%2Fcore%2Fuifw%2Flibtdm.git diff --git a/src/tdm_server.c b/src/tdm_server.c index a71eb0e..453e10e 100644 --- a/src/tdm_server.c +++ b/src/tdm_server.c @@ -607,7 +607,6 @@ _tdm_server_output_cb_get_available_modes(struct wl_client *client, struct wl_re tdm_error ret; ret = tdm_output_get_available_modes(output_info->output, &modes, &count); - if ((ret != TDM_ERROR_NONE) || (count == 0)) { wl_tdm_output_send_available_modes(output_info->resource, NULL, ret); return; @@ -630,6 +629,8 @@ _tdm_server_output_cb_set_mode(struct wl_client *client, struct wl_resource *res { tdm_server_output_info *output_info = wl_resource_get_user_data(resource); tdm_output_conn_status status = TDM_OUTPUT_CONN_STATUS_DISCONNECTED; + const tdm_output_mode *modes; + int count = 0; tdm_error ret; TDM_RETURN_IF_FAIL(output_info != NULL); @@ -638,7 +639,10 @@ _tdm_server_output_cb_set_mode(struct wl_client *client, struct wl_resource *res TDM_RETURN_IF_FAIL(ret == TDM_ERROR_NONE); TDM_RETURN_IF_FAIL(status != TDM_OUTPUT_CONN_STATUS_DISCONNECTED); - //To do + ret = tdm_output_get_available_modes(output_info->output, &modes, &count); + TDM_RETURN_IF_FAIL(index < count); + + tdm_output_call_mode_set_request(output_info->output, index); return; }