diff --git a/sflphone-client-gnome/src/actions.c b/sflphone-client-gnome/src/actions.c
index f0ab70744457cd672bf71bc8d1ea801023f05bde..11babd5c569951ada263ec80c877ea5cdceeca95 100644
--- a/sflphone-client-gnome/src/actions.c
+++ b/sflphone-client-gnome/src/actions.c
@@ -142,6 +142,7 @@ sflphone_hung_up( callable_obj_t * c)
     calllist_remove( current_calls, c->_callID);
     calltree_remove_call(current_calls, c);
     c->_state = CALL_STATE_DIALING;
+    call_remove_all_errors(c);
     update_menus();
 #if GTK_CHECK_VERSION(2,10,0)
     status_tray_icon_blink( FALSE );
@@ -308,6 +309,7 @@ sflphone_hang_up()
                 break;
             case CALL_STATE_RINGING:
                 dbus_hang_up (selectedCall);
+                call_remove_all_errors(selectedCall);
                 selectedCall->_state = CALL_STATE_DIALING;
                 //selectedCall->_stop = 0;
                 break;
@@ -316,20 +318,24 @@ sflphone_hang_up()
             case CALL_STATE_BUSY:
             case CALL_STATE_RECORD:
                 dbus_hang_up (selectedCall);
+                call_remove_all_errors(selectedCall);
                 selectedCall->_state = CALL_STATE_DIALING;
                 set_timestamp (&selectedCall->_time_stop);
                 break;
             case CALL_STATE_FAILURE:
                 dbus_hang_up (selectedCall);
+                call_remove_all_errors(selectedCall);
                 selectedCall->_state = CALL_STATE_DIALING;
                 break;
             case CALL_STATE_INCOMING:
                 dbus_refuse (selectedCall);
+                call_remove_all_errors(selectedCall);
                 selectedCall->_state = CALL_STATE_DIALING;
                 DEBUG("from sflphone_hang_up : "); stop_notification();
                 break;
             case CALL_STATE_TRANSFERT:
                 dbus_hang_up (selectedCall);
+                call_remove_all_errors(selectedCall);
                 set_timestamp (&selectedCall->_time_stop);
                 break;
             default:
diff --git a/sflphone-client-gnome/src/callable_obj.c b/sflphone-client-gnome/src/callable_obj.c
index ecbc00ae1291584e932320f66f9c4df5a88255a2..a50b631cbdbe8f08fe09677cfc9001f230a0e012 100644
--- a/sflphone-client-gnome/src/callable_obj.c
+++ b/sflphone-client-gnome/src/callable_obj.c
@@ -93,6 +93,8 @@ void create_new_call (callable_type_t type, call_state_t state, gchar* callID ,
     // Allocate memory
     obj = g_new0 (callable_obj_t, 1);
 
+    obj->_error_dialogs = g_ptr_array_new();
+    
     // Set fields
     obj->_type = type;
     obj->_state = state;