aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/dialogs/comp-editor.c
diff options
context:
space:
mode:
Diffstat (limited to 'calendar/gui/dialogs/comp-editor.c')
-rw-r--r--calendar/gui/dialogs/comp-editor.c25
1 files changed, 12 insertions, 13 deletions
diff --git a/calendar/gui/dialogs/comp-editor.c b/calendar/gui/dialogs/comp-editor.c
index c7a7c10d6d..fe7cba9dfd 100644
--- a/calendar/gui/dialogs/comp-editor.c
+++ b/calendar/gui/dialogs/comp-editor.c
@@ -806,7 +806,8 @@ response_cb (GtkWidget *widget, int response, gpointer data)
CompEditorPrivate *priv;
ECalComponentText text;
gboolean delegated;
-
+ ECalComponent *comp;
+
priv = editor->priv;
delegated = (priv->flags & COMP_EDITOR_DELEGATE);
@@ -831,23 +832,21 @@ response_cb (GtkWidget *widget, int response, gpointer data)
return;
}
commit_all_fields (editor);
-
if (e_cal_component_is_instance (priv->comp))
if (!recur_component_dialog (priv->client, priv->comp, &priv->mod, GTK_WINDOW (editor), delegated))
return;
-
- if (save_comp_with_send (editor)) {
-
- e_cal_component_get_summary (priv->comp, &text);
-
- if (!text.value) {
- if (!send_component_prompt_subject ((GtkWindow *) editor, priv->client, priv->comp))
- return;
- }
- close_dialog (editor);
- }
+ comp = comp_editor_get_current_comp (editor);
+ e_cal_component_get_summary (comp, &text);
+ g_object_unref (comp);
+
+ if (!text.value)
+ if (!send_component_prompt_subject ((GtkWindow *) editor, priv->client, priv->comp))
+ return;
+ if (save_comp_with_send (editor))
+ close_dialog (editor);
break;
+
case GTK_RESPONSE_HELP:
comp_editor_show_help (editor);