[gnome-photos] export-dialog: Fix error path for photos_base_item_save_guess_sizes
- From: Debarshi Ray <debarshir src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-photos] export-dialog: Fix error path for photos_base_item_save_guess_sizes
- Date: Sun, 31 Jan 2016 22:12:03 +0000 (UTC)
commit e0d707bcd4990f80fdcf596cb5e9dd0102d7b213
Author: Debarshi Ray <debarshir gnome org>
Date: Fri Jan 29 18:22:19 2016 +0100
export-dialog: Fix error path for photos_base_item_save_guess_sizes
We cannot update the visibility of the size options without self.
src/photos-export-dialog.c | 55 ++++++++++++++++++++++++-------------------
1 files changed, 31 insertions(+), 24 deletions(-)
---
diff --git a/src/photos-export-dialog.c b/src/photos-export-dialog.c
index b6fcfe2..33ce667 100644
--- a/src/photos-export-dialog.c
+++ b/src/photos-export-dialog.c
@@ -131,15 +131,14 @@ photos_export_dialog_guess_sizes (GObject *source_object, GAsyncResult *res, gpo
PhotosExportDialog *self;
PhotosBaseItem *item = PHOTOS_BASE_ITEM (source_object);
GError *error;
- GeglRectangle bbox;
- gboolean got_bbox_edited;
- gchar *size_str;
- gchar *size_str_markup;
+ gboolean success = TRUE;
gsize sizes[2];
error = NULL;
if (!photos_base_item_save_guess_sizes_finish (item, res, &sizes[0], &sizes[1], &error))
{
+ success = FALSE;
+
if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
{
g_error_free (error);
@@ -149,38 +148,46 @@ photos_export_dialog_guess_sizes (GObject *source_object, GAsyncResult *res, gpo
{
g_warning ("Unable to guess sizes: %s", error->message);
g_error_free (error);
- goto out;
}
}
self = PHOTOS_EXPORT_DIALOG (user_data);
- got_bbox_edited = photos_base_item_get_bbox_edited (self->item, &bbox);
- g_return_if_fail (got_bbox_edited);
+ if (success)
+ {
+ GeglRectangle bbox;
+ gboolean got_bbox_edited;
+ gchar *size_str;
+ gchar *size_str_markup;
- size_str = photos_export_dialog_create_size_str (bbox.height, bbox.width, (guint64) sizes[0]);
- size_str_markup = g_strdup_printf ("<small>%s</small>", size_str);
- gtk_label_set_markup (GTK_LABEL (self->full_label), size_str_markup);
- g_free (size_str);
- g_free (size_str_markup);
+ got_bbox_edited = photos_base_item_get_bbox_edited (self->item, &bbox);
+ g_return_if_fail (got_bbox_edited);
- if (self->reduced_zoom > 0.0)
- {
- gint reduced_height;
- gint reduced_width;
- gsize reduced_size;
-
- reduced_height = (gint) ((gdouble) bbox.height * self->reduced_zoom + 0.5);
- reduced_width = (gint) ((gdouble) bbox.width * self->reduced_zoom + 0.5);
- reduced_size = (gsize) (sizes[1] + (sizes[0] - sizes[1]) * (self->reduced_zoom - 0.5) / (1.0 - 0.5) +
0.5);
- size_str = photos_export_dialog_create_size_str (reduced_height, reduced_width, (guint64)
reduced_size);
+ size_str = photos_export_dialog_create_size_str (bbox.height, bbox.width, (guint64) sizes[0]);
size_str_markup = g_strdup_printf ("<small>%s</small>", size_str);
- gtk_label_set_markup (GTK_LABEL (self->reduced_label), size_str_markup);
+ gtk_label_set_markup (GTK_LABEL (self->full_label), size_str_markup);
g_free (size_str);
g_free (size_str_markup);
+
+ if (self->reduced_zoom > 0.0)
+ {
+ gint reduced_height;
+ gint reduced_width;
+ gsize reduced_size;
+
+ reduced_height = (gint) ((gdouble) bbox.height * self->reduced_zoom + 0.5);
+ reduced_width = (gint) ((gdouble) bbox.width * self->reduced_zoom + 0.5);
+ reduced_size = (gsize) (sizes[1]
+ + (sizes[0] - sizes[1]) * (self->reduced_zoom - 0.5) / (1.0 - 0.5)
+ + 0.5);
+ size_str = photos_export_dialog_create_size_str (reduced_height, reduced_width, (guint64)
reduced_size);
+ size_str_markup = g_strdup_printf ("<small>%s</small>", size_str);
+ gtk_label_set_markup (GTK_LABEL (self->reduced_label), size_str_markup);
+ g_free (size_str);
+ g_free (size_str_markup);
+ }
}
- out:
photos_export_dialog_show_size_options (self, FALSE);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]