ecore-drm: refactor _ecore_drm_output_backlight_init() to use fewer gotos

This commit is contained in:
Mike Blumenkrantz 2015-04-23 13:21:32 -04:00
parent e6ed330dce
commit e95488ded5
1 changed files with 10 additions and 13 deletions

View File

@ -352,27 +352,24 @@ _ecore_drm_output_backlight_init(Ecore_Drm_Output *output, uint32_t conn_type)
else if (!strcmp(devtype, "firmware"))
type = ECORE_DRM_BACKLIGHT_FIRMWARE;
if ((conn_type != DRM_MODE_CONNECTOR_LVDS) &&
(conn_type != DRM_MODE_CONNECTOR_eDP))
{
if (type != ECORE_DRM_BACKLIGHT_RAW) goto cont;
}
if ((conn_type == DRM_MODE_CONNECTOR_LVDS) ||
(conn_type == DRM_MODE_CONNECTOR_eDP) ||
(type == ECORE_DRM_BACKLIGHT_RAW))
found = EINA_TRUE;
found = EINA_TRUE;
cont:
eina_stringshare_del(devtype);
if (found) break;
}
if (!found) goto out;
if ((backlight = calloc(1, sizeof(Ecore_Drm_Backlight))))
if (found)
{
backlight->type = type;
backlight->device = eina_stringshare_add(device);
if ((backlight = calloc(1, sizeof(Ecore_Drm_Backlight))))
{
backlight->type = type;
backlight->device = eina_stringshare_add(device);
}
}
out:
EINA_LIST_FREE(devs, device)
eina_stringshare_del(device);