mirror of
https://github.com/brl/mutter.git
synced 2025-02-23 08:24:09 +00:00
monitor-manager-kms: Don't store a list of encoders
It's not needed outside of read_current() and current_encoder is totally unused. https://bugzilla.gnome.org/show_bug.cgi?id=745476
This commit is contained in:
parent
6234f7d1db
commit
6af48d75a4
@ -66,11 +66,6 @@ struct _MetaMonitorManagerKms
|
|||||||
drmModeConnector **connectors;
|
drmModeConnector **connectors;
|
||||||
unsigned int n_connectors;
|
unsigned int n_connectors;
|
||||||
|
|
||||||
drmModeEncoder **encoders;
|
|
||||||
unsigned int n_encoders;
|
|
||||||
|
|
||||||
drmModeEncoder *current_encoder;
|
|
||||||
|
|
||||||
GUdevClient *udev;
|
GUdevClient *udev;
|
||||||
|
|
||||||
GSettings *desktop_settings;
|
GSettings *desktop_settings;
|
||||||
@ -88,12 +83,9 @@ free_resources (MetaMonitorManagerKms *manager_kms)
|
|||||||
{
|
{
|
||||||
unsigned i;
|
unsigned i;
|
||||||
|
|
||||||
for (i = 0; i < manager_kms->n_encoders; i++)
|
|
||||||
drmModeFreeEncoder (manager_kms->encoders[i]);
|
|
||||||
for (i = 0; i < manager_kms->n_connectors; i++)
|
for (i = 0; i < manager_kms->n_connectors; i++)
|
||||||
drmModeFreeConnector (manager_kms->connectors[i]);
|
drmModeFreeConnector (manager_kms->connectors[i]);
|
||||||
|
|
||||||
g_free (manager_kms->encoders);
|
|
||||||
g_free (manager_kms->connectors);
|
g_free (manager_kms->connectors);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -338,6 +330,7 @@ meta_monitor_manager_kms_read_current (MetaMonitorManager *manager)
|
|||||||
{
|
{
|
||||||
MetaMonitorManagerKms *manager_kms = META_MONITOR_MANAGER_KMS (manager);
|
MetaMonitorManagerKms *manager_kms = META_MONITOR_MANAGER_KMS (manager);
|
||||||
drmModeRes *resources;
|
drmModeRes *resources;
|
||||||
|
drmModeEncoder **encoders;
|
||||||
GHashTable *modes;
|
GHashTable *modes;
|
||||||
GHashTableIter iter;
|
GHashTableIter iter;
|
||||||
drmModeModeInfo *mode;
|
drmModeModeInfo *mode;
|
||||||
@ -381,13 +374,9 @@ meta_monitor_manager_kms_read_current (MetaMonitorManager *manager)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
manager_kms->n_encoders = resources->count_encoders;
|
encoders = g_new (drmModeEncoder *, resources->count_encoders);
|
||||||
manager_kms->encoders = g_new (drmModeEncoder *, manager_kms->n_encoders);
|
for (i = 0; i < (unsigned)resources->count_encoders; i++)
|
||||||
for (i = 0; i < manager_kms->n_encoders; i++)
|
encoders[i] = drmModeGetEncoder (manager_kms->fd, resources->encoders[i]);
|
||||||
{
|
|
||||||
manager_kms->encoders[i] = drmModeGetEncoder (manager_kms->fd,
|
|
||||||
resources->encoders[i]);
|
|
||||||
}
|
|
||||||
|
|
||||||
manager->n_modes = g_hash_table_size (modes);
|
manager->n_modes = g_hash_table_size (modes);
|
||||||
manager->modes = g_new0 (MetaMonitorMode, manager->n_modes);
|
manager->modes = g_new0 (MetaMonitorMode, manager->n_modes);
|
||||||
@ -625,9 +614,9 @@ meta_monitor_manager_kms_read_current (MetaMonitorManager *manager)
|
|||||||
|
|
||||||
for (j = 0; j < output_kms->n_encoders; j++)
|
for (j = 0; j < output_kms->n_encoders; j++)
|
||||||
{
|
{
|
||||||
for (k = 0; k < manager_kms->n_encoders; k++)
|
for (k = 0; k < (unsigned)resources->count_encoders; k++)
|
||||||
{
|
{
|
||||||
if (output_kms->encoders[j]->encoder_id == manager_kms->encoders[k]->encoder_id)
|
if (output_kms->encoders[j]->encoder_id == encoders[k]->encoder_id)
|
||||||
{
|
{
|
||||||
output_kms->encoder_mask |= (1 << k);
|
output_kms->encoder_mask |= (1 << k);
|
||||||
break;
|
break;
|
||||||
@ -674,6 +663,10 @@ meta_monitor_manager_kms_read_current (MetaMonitorManager *manager)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (i = 0; i < (unsigned)resources->count_encoders; i++)
|
||||||
|
drmModeFreeEncoder (encoders[i]);
|
||||||
|
g_free (encoders);
|
||||||
|
|
||||||
drmModeFreeResources (resources);
|
drmModeFreeResources (resources);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user