diff --git a/sflphone-client-gnome/src/widget/imwidget.c b/sflphone-client-gnome/src/widget/imwidget.c
index 49041dbb8c9197a80c4b0a8819ac226648f10fb5..91855624c30169ae929cbf1da1e963ced1a095ff 100644
--- a/sflphone-client-gnome/src/widget/imwidget.c
+++ b/sflphone-client-gnome/src/widget/imwidget.c
@@ -343,10 +343,12 @@ im_widget_update_state (IMWidget *im, gboolean active)
     }
     /* if active = false, the call is over, we can't send text messages anymore */
     else {
-        gtk_widget_set_sensitive (im->info_state, FALSE);
-        gtk_info_bar_set_message_type (GTK_INFO_BAR (im->info_bar),
-                                       GTK_MESSAGE_WARNING);
-        gtk_widget_set_tooltip_text (im->info_state, "Call has terminated");
+        if (im) {
+            gtk_widget_set_sensitive (im->info_state, FALSE);
+            gtk_info_bar_set_message_type (GTK_INFO_BAR (im->info_bar),
+                                           GTK_MESSAGE_WARNING);
+            gtk_widget_set_tooltip_text (im->info_state, "Call has terminated");
+        }
     }
 }