aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/modules/e-task-shell-sidebar.c
diff options
context:
space:
mode:
Diffstat (limited to 'calendar/modules/e-task-shell-sidebar.c')
-rw-r--r--calendar/modules/e-task-shell-sidebar.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/calendar/modules/e-task-shell-sidebar.c b/calendar/modules/e-task-shell-sidebar.c
index 6f2f1bb409..9631321edb 100644
--- a/calendar/modules/e-task-shell-sidebar.c
+++ b/calendar/modules/e-task-shell-sidebar.c
@@ -167,6 +167,10 @@ task_shell_sidebar_client_opened_cb (ETaskShellSidebar *task_shell_sidebar,
shell_view = e_shell_sidebar_get_shell_view (shell_sidebar);
shell_window = e_shell_view_get_shell_window (shell_view);
+ if (status == E_CALENDAR_STATUS_AUTHENTICATION_FAILED ||
+ status == E_CALENDAR_STATUS_AUTHENTICATION_REQUIRED)
+ auth_cal_forget_password (client);
+
switch (status) {
case E_CALENDAR_STATUS_OK:
g_signal_handlers_disconnect_matched (
@@ -181,6 +185,10 @@ task_shell_sidebar_client_opened_cb (ETaskShellSidebar *task_shell_sidebar,
task_shell_sidebar, NULL);
break;
+ case E_CALENDAR_STATUS_AUTHENTICATION_FAILED:
+ e_cal_open_async (client, FALSE);
+ break;
+
case E_CALENDAR_STATUS_BUSY:
break;