ret = _tdm_display_update_caps_output(private_module, pipe, output_backend, &private_output->caps);
TDM_RETURN_VAL_IF_FAIL(ret == TDM_ERROR_NONE, ret);
+
+ if (private_output->caps.status == TDM_OUTPUT_CONN_STATUS_DISCONNECTED)
+ private_output->current_mode = NULL;
}
layers = func_output->output_get_layers(output_backend, &layer_count, &ret);
}
static tdm_error
-_tdm_display_update(tdm_private_display *private_display)
+_tdm_display_setup(tdm_private_display *private_display)
{
tdm_private_module *private_module = NULL;
tdm_error ret = TDM_ERROR_NONE;
tdm_display_update(tdm_display *dpy)
{
TDM_RETURN_VAL_IF_FAIL(dpy != NULL, TDM_ERROR_INVALID_PARAMETER);
- TDM_RETURN_VAL_IF_FAIL(tdm_display_is_valid(dpy), TDM_ERROR_INVALID_PARAMETER);
TDM_DEPRECATED(NULL);
#endif
TDM_TRACE_BEGIN("TDM_Update_Display");
- ret = _tdm_display_update(private_display);
+ ret = _tdm_display_setup(private_display);
TDM_TRACE_END();
if (ret != TDM_ERROR_NONE)
goto failed_update;
if (!private_display)
return;
- TDM_RETURN_IF_FAIL(tdm_display_is_valid(dpy));
-
pthread_mutex_lock(&gLock);
private_display->init_count--;
return g_private_display;
}
-INTERN int
-tdm_display_is_valid(tdm_display *dpy)
-{
- if (dpy != NULL && dpy == g_private_display)
- return 1;
- return 0;
-}
-
-INTERN int
-tdm_output_is_valid(tdm_output *output)
-{
- tdm_private_module *b = NULL;
- tdm_private_output *o = NULL;
-
- if (!output || !g_private_display)
- return 0;
-
- LIST_FOR_EACH_ENTRY(b, &g_private_display->module_list, link) {
- LIST_FOR_EACH_ENTRY(o, &b->output_list, link)
- if (o == output)
- return 1;
- }
-
- return 0;
-}