display: Use g_auto for variables

This commit is contained in:
Robert Ancell 2018-05-29 15:23:26 +12:00 committed by Georges Basile Stavracas Neto
parent f4b630030c
commit 961b41a291
5 changed files with 67 additions and 96 deletions

View file

@ -628,7 +628,7 @@ cc_display_arrangement_draw (GtkWidget *widget,
{
PangoLayout *layout;
PangoFontDescription *font = NULL;
gchar *number_str;
g_autofree gchar *number_str = NULL;
PangoRectangle extents;
GdkRGBA color;
gdouble text_width, text_padding;
@ -647,7 +647,6 @@ cc_display_arrangement_draw (GtkWidget *widget,
layout = gtk_widget_create_pango_layout (GTK_WIDGET (self), number_str);
pango_layout_set_font_description (layout, font);
pango_layout_get_extents (layout, NULL, &extents);
g_free (number_str);
h = (extents.height - extents.y) / PANGO_SCALE;
text_width = (extents.width - extents.x) / PANGO_SCALE;

View file

@ -176,8 +176,8 @@ static CcDisplayModeDBus *
cc_display_mode_dbus_new (GVariant *variant)
{
double d;
GVariantIter *scales_iter;
GVariant *properties_variant;
g_autoptr(GVariantIter) scales_iter = NULL;
g_autoptr(GVariant) properties_variant = NULL;
gboolean is_current;
gboolean is_preferred;
gboolean is_interlaced;
@ -209,9 +209,6 @@ cc_display_mode_dbus_new (GVariant *variant)
if (is_interlaced)
self->flags |= MODE_INTERLACED;
g_variant_iter_free (scales_iter);
g_variant_unref (properties_variant);
return self;
}
@ -776,10 +773,14 @@ construct_modes (CcDisplayMonitorDBus *self,
GVariantIter *modes)
{
CcDisplayModeDBus *mode;
GVariant *variant;
while (g_variant_iter_next (modes, "@"MODE_FORMAT, &variant))
while (TRUE)
{
g_autoptr(GVariant) variant = NULL;
if (!g_variant_iter_next (modes, "@"MODE_FORMAT, &variant))
break;
mode = cc_display_mode_dbus_new (variant);
self->modes = g_list_prepend (self->modes, mode);
@ -787,8 +788,6 @@ construct_modes (CcDisplayMonitorDBus *self,
self->preferred_mode = CC_DISPLAY_MODE (mode);
if (mode->flags & MODE_CURRENT)
self->current_mode = CC_DISPLAY_MODE (mode);
g_variant_unref (variant);
}
}
@ -798,10 +797,8 @@ cc_display_monitor_dbus_new (GVariant *variant,
{
CcDisplayMonitorDBus *self = g_object_new (CC_TYPE_DISPLAY_MONITOR_DBUS, NULL);
gchar *s1, *s2, *s3, *s4;
GVariantIter *modes;
GVariantIter *props;
const char *s;
GVariant *v;
g_autoptr(GVariantIter) modes = NULL;
g_autoptr(GVariantIter) props = NULL;
self->config = config;
@ -814,8 +811,14 @@ cc_display_monitor_dbus_new (GVariant *variant,
construct_modes (self, modes);
while (g_variant_iter_next (props, "{&sv}", &s, &v))
while (TRUE)
{
const char *s;
g_autoptr(GVariant) v = NULL;
if (!g_variant_iter_next (props, "{&sv}", &s, &v))
break;
if (g_str_equal (s, "width-mm"))
{
g_variant_get (v, "i", &self->width_mm);
@ -845,13 +848,8 @@ cc_display_monitor_dbus_new (GVariant *variant,
{
g_variant_get (v, "s", &self->display_name);
}
g_variant_unref (v);
}
g_variant_iter_free (modes);
g_variant_iter_free (props);
return self;
}
@ -987,7 +985,7 @@ config_apply (CcDisplayConfigDBus *self,
CcDisplayConfigMethod method,
GError **error)
{
GVariant *retval;
g_autoptr(GVariant) retval = NULL;
cc_display_config_dbus_ensure_non_offset_coords (self);
@ -1002,23 +1000,18 @@ config_apply (CcDisplayConfigDBus *self,
-1,
NULL,
error);
if (!retval)
return FALSE;
g_variant_unref (retval);
return TRUE;
return retval != NULL;
}
static gboolean
cc_display_config_dbus_is_applicable (CcDisplayConfig *pself)
{
CcDisplayConfigDBus *self = CC_DISPLAY_CONFIG_DBUS (pself);
GError *error = NULL;
g_autoptr(GError) error = NULL;
if (!config_apply (self, CC_DISPLAY_CONFIG_METHOD_VERIFY, &error))
{
g_warning ("Config not applicable: %s", error->message);
g_error_free (error);
return FALSE;
}
else
@ -1275,11 +1268,13 @@ construct_monitors (CcDisplayConfigDBus *self,
GVariantIter *monitors,
GVariantIter *logical_monitors)
{
GVariant *variant;
while (g_variant_iter_next (monitors, "@"MONITOR_FORMAT, &variant))
while (TRUE)
{
CcDisplayMonitorDBus *monitor;
g_autoptr(GVariant) variant = NULL;
if (!g_variant_iter_next (monitors, "@"MONITOR_FORMAT, &variant))
break;
monitor = cc_display_monitor_dbus_new (variant, self);
self->monitors = g_list_prepend (self->monitors, monitor);
@ -1288,15 +1283,18 @@ construct_monitors (CcDisplayConfigDBus *self,
g_signal_connect_object (monitor, "scale",
G_CALLBACK (apply_global_scale_requirement),
self, G_CONNECT_SWAPPED);
g_variant_unref (variant);
}
while (g_variant_iter_next (logical_monitors, "@"LOGICAL_MONITOR_FORMAT, &variant))
while (TRUE)
{
g_autoptr(GVariant) variant = NULL;
CcDisplayLogicalMonitor *logical_monitor;
GVariantIter *monitor_specs;
g_autoptr(GVariantIter) monitor_specs = NULL;
const gchar *s1, *s2, *s3, *s4;
if (!g_variant_iter_next (logical_monitors, "@"LOGICAL_MONITOR_FORMAT, &variant))
break;
logical_monitor = g_object_new (CC_TYPE_DISPLAY_LOGICAL_MONITOR, NULL);
g_variant_get (variant, LOGICAL_MONITOR_FORMAT,
&logical_monitor->x,
@ -1335,9 +1333,6 @@ construct_monitors (CcDisplayConfigDBus *self,
}
register_logical_monitor (self, logical_monitor);
g_variant_iter_free (monitor_specs);
g_variant_unref (variant);
}
gather_clone_modes (self);
@ -1347,11 +1342,9 @@ static void
cc_display_config_dbus_constructed (GObject *object)
{
CcDisplayConfigDBus *self = CC_DISPLAY_CONFIG_DBUS (object);
GVariantIter *monitors;
GVariantIter *logical_monitors;
GVariantIter *props;
const char *s;
GVariant *v;
g_autoptr(GVariantIter) monitors = NULL;
g_autoptr(GVariantIter) logical_monitors = NULL;
g_autoptr(GVariantIter) props = NULL;
g_variant_get (self->state,
CURRENT_STATE_FORMAT,
@ -1360,8 +1353,14 @@ cc_display_config_dbus_constructed (GObject *object)
&logical_monitors,
&props);
while (g_variant_iter_next (props, "{&sv}", &s, &v))
while (TRUE)
{
const char *s;
g_autoptr(GVariant) v = NULL;
if (!g_variant_iter_next (props, "{&sv}", &s, &v))
break;
if (g_str_equal (s, "supports-mirroring"))
{
g_variant_get (v, "b", &self->supports_mirroring);
@ -1382,16 +1381,10 @@ cc_display_config_dbus_constructed (GObject *object)
u <= CC_DISPLAY_LAYOUT_MODE_PHYSICAL)
self->layout_mode = u;
}
g_variant_unref (v);
}
construct_monitors (self, monitors, logical_monitors);
g_variant_iter_free (monitors);
g_variant_iter_free (logical_monitors);
g_variant_iter_free (props);
G_OBJECT_CLASS (cc_display_config_dbus_parent_class)->constructed (object);
}

View file

@ -57,7 +57,7 @@ got_current_state (GObject *object,
{
CcDisplayConfigManagerDBus *self;
GVariant *variant;
GError *error = NULL;
g_autoptr(GError) error = NULL;
variant = g_dbus_connection_call_finish (G_DBUS_CONNECTION (object),
result, &error);
@ -70,7 +70,6 @@ got_current_state (GObject *object,
_cc_display_config_manager_emit_changed (CC_DISPLAY_CONFIG_MANAGER (data));
g_warning ("Error calling GetCurrentState: %s", error->message);
}
g_clear_error (&error);
return;
}
@ -118,7 +117,7 @@ bus_gotten (GObject *object,
{
CcDisplayConfigManagerDBus *self;
GDBusConnection *connection;
GError *error = NULL;
g_autoptr(GError) error = NULL;
connection = g_bus_get_finish (result, &error);
if (!connection)
@ -128,7 +127,6 @@ bus_gotten (GObject *object,
_cc_display_config_manager_emit_changed (CC_DISPLAY_CONFIG_MANAGER (data));
g_warning ("Error obtaining DBus connection: %s", error->message);
}
g_clear_error (&error);
return;
}

View file

@ -63,17 +63,14 @@ static char *
make_output_ui_name (CcDisplayMonitor *output)
{
int width_mm, height_mm;
char *size, *name;
g_autofree char *size = NULL;
cc_display_monitor_get_physical_size (output, &width_mm, &height_mm);
size = make_display_size_string (width_mm, height_mm);
if (size)
name = g_strdup_printf ("%s (%s)", cc_display_monitor_get_display_name (output), size);
return g_strdup_printf ("%s (%s)", cc_display_monitor_get_display_name (output), size);
else
name = g_strdup_printf ("%s", cc_display_monitor_get_display_name (output));
g_free (size);
return name;
return g_strdup_printf ("%s", cc_display_monitor_get_display_name (output));
}

View file

@ -177,7 +177,8 @@ monitor_labeler_show (CcDisplayPanel *self)
static void
ensure_monitor_labels (CcDisplayPanel *self)
{
GList *windows, *w;
g_autoptr(GList) windows;
GList *w;
windows = gtk_window_list_toplevels ();
@ -192,8 +193,6 @@ ensure_monitor_labels (CcDisplayPanel *self)
if (!w)
monitor_labeler_hide (self);
g_list_free (windows);
}
static void
@ -223,13 +222,11 @@ active_panel_changed (CcShell *shell,
GParamSpec *pspec,
CcPanel *self)
{
CcPanel *panel = NULL;
g_autoptr(CcPanel) panel = NULL;
g_object_get (shell, "active-panel", &panel, NULL);
if (panel != self)
reset_titlebar (CC_DISPLAY_PANEL (self));
g_object_unref (panel);
}
static void
@ -349,7 +346,7 @@ make_scrollable (GtkWidget *widget)
static GtkWidget *
make_bold_label (const gchar *text)
{
GtkCssProvider *provider;
g_autoptr(GtkCssProvider) provider = NULL;
GtkWidget *label = gtk_label_new (text);
provider = gtk_css_provider_new ();
@ -358,7 +355,6 @@ make_bold_label (const gchar *text)
gtk_style_context_add_provider (gtk_widget_get_style_context (label),
GTK_STYLE_PROVIDER (provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
g_object_unref (provider);
return label;
}
@ -465,7 +461,7 @@ make_list_box (void)
static GtkWidget *
make_list_transparent (GtkWidget *listbox)
{
GtkCssProvider *provider;
g_autoptr(GtkCssProvider) provider = NULL;
provider = gtk_css_provider_new ();
gtk_css_provider_load_from_data (GTK_CSS_PROVIDER (provider),
@ -473,7 +469,6 @@ make_list_transparent (GtkWidget *listbox)
gtk_style_context_add_provider (gtk_widget_get_style_context (listbox),
GTK_STYLE_PROVIDER (provider),
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
g_object_unref (provider);
return listbox;
}
@ -816,10 +811,8 @@ round_scale_for_ui (double scale)
static GtkWidget *
make_label_for_scale (double scale)
{
gchar *text = g_strdup_printf (" %d %% ", (int) (round_scale_for_ui (scale)*100));
GtkWidget *label = gtk_label_new (text);
g_free (text);
return label;
g_autofree gchar *text = g_strdup_printf (" %d %% ", (int) (round_scale_for_ui (scale)*100));
return gtk_label_new (text);
}
#define MAX_N_SCALES 5
@ -866,7 +859,8 @@ static void
scale_buttons_sync (GtkWidget *bbox,
CcDisplayMonitor *output)
{
GList *children, *l;
g_autoptr(GList) children;
GList *l;
children = gtk_container_get_children (GTK_CONTAINER (bbox));
for (l = children; l; l = l->next)
@ -876,7 +870,6 @@ scale_buttons_sync (GtkWidget *bbox,
if (scale == cc_display_monitor_get_scale (output))
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), TRUE);
}
g_list_free (children);
}
static GtkWidget *
@ -1226,7 +1219,8 @@ static void
two_output_chooser_sync (GtkWidget *box,
CcDisplayPanel *panel)
{
GList *children, *l;
g_autoptr(GList) children = NULL;
GList *l;
children = gtk_container_get_children (GTK_CONTAINER (box));
for (l = children; l; l = l->next)
@ -1236,7 +1230,6 @@ two_output_chooser_sync (GtkWidget *box,
if (panel->current_output == output)
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), TRUE);
}
g_list_free (children);
}
static GtkWidget *
@ -1506,7 +1499,8 @@ two_output_visible_child_changed (CcDisplayPanel *panel,
GtkWidget *stack)
{
GtkWidget *bin;
GList *children, *l;
g_autoptr(GList) children = NULL;
GList *l;
reset_current_config (panel);
@ -1517,7 +1511,6 @@ two_output_visible_child_changed (CcDisplayPanel *panel,
if (ui)
gtk_widget_destroy (ui);
}
g_list_free (children);
bin = gtk_stack_get_visible_child (GTK_STACK (stack));
@ -1892,10 +1885,9 @@ on_toplevel_key_press (GtkWidget *button,
static void
show_apply_titlebar (CcDisplayPanel *panel, gboolean is_applicable)
{
GtkSizeGroup *size_group;
if (!panel->apply_titlebar)
{
g_autoptr(GtkSizeGroup) size_group = NULL;
GtkWidget *header, *button, *toplevel;
panel->apply_titlebar = header = gtk_header_bar_new ();
@ -1920,7 +1912,6 @@ show_apply_titlebar (CcDisplayPanel *panel, gboolean is_applicable)
GTK_STYLE_CLASS_SUGGESTED_ACTION);
gtk_widget_show_all (header);
g_object_unref (size_group);
header = gtk_window_get_titlebar (GTK_WINDOW (toplevel));
if (header)
@ -1948,13 +1939,12 @@ static void
update_apply_button (CcDisplayPanel *panel)
{
gboolean config_equal;
CcDisplayConfig *applied_config;
g_autoptr(CcDisplayConfig) applied_config = NULL;
applied_config = cc_display_config_manager_get_current (panel->manager);
config_equal = cc_display_config_equal (panel->current_config,
applied_config);
g_object_unref (applied_config);
if (config_equal)
reset_titlebar (panel);
@ -1965,7 +1955,7 @@ update_apply_button (CcDisplayPanel *panel)
static void
apply_current_configuration (CcDisplayPanel *self)
{
GError *error = NULL;
g_autoptr(GError) error = NULL;
cc_display_config_apply (self->current_config, &error);
@ -1973,10 +1963,7 @@ apply_current_configuration (CcDisplayPanel *self)
on_screen_changed (self);
if (error)
{
g_warning ("Error applying configuration: %s", error->message);
g_clear_error (&error);
}
g_warning ("Error applying configuration: %s", error->message);
}
static const gchar *
@ -2148,14 +2135,13 @@ shell_proxy_ready (GObject *source,
CcDisplayPanel *self)
{
GDBusProxy *proxy;
GError *error = NULL;
g_autoptr(GError) error = NULL;
proxy = cc_object_storage_create_dbus_proxy_finish (res, &error);
if (!proxy)
{
if (!g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
g_warning ("Failed to contact gnome-shell: %s", error->message);
g_error_free (error);
return;
}
@ -2167,7 +2153,7 @@ shell_proxy_ready (GObject *source,
static void
update_has_accel (CcDisplayPanel *self)
{
GVariant *v;
g_autoptr(GVariant) v = NULL;
if (self->iio_sensor_proxy == NULL)
{
@ -2180,7 +2166,6 @@ update_has_accel (CcDisplayPanel *self)
if (v)
{
self->has_accelerometer = g_variant_get_boolean (v);
g_variant_unref (v);
}
else
{
@ -2292,7 +2277,7 @@ session_bus_ready (GObject *source,
CcDisplayPanel *self)
{
GDBusConnection *bus;
GError *error = NULL;
g_autoptr(GError) error = NULL;
bus = g_bus_get_finish (res, &error);
if (!bus)
@ -2302,7 +2287,6 @@ session_bus_ready (GObject *source,
g_warning ("Failed to get session bus: %s", error->message);
gtk_stack_set_visible_child_name (GTK_STACK (self->stack), "error");
}
g_error_free (error);
return;
}