diff --git a/sflphone-gtk/src/actions.c b/sflphone-gtk/src/actions.c
index 98dd600b69200373649214df50641305032b46f0..61f479ea41741f0f0b20619a90ea298ac10a3ae8 100644
--- a/sflphone-gtk/src/actions.c
+++ b/sflphone-gtk/src/actions.c
@@ -601,14 +601,12 @@ sflphone_place_call ( call_t * c )
     if( account_list_get_size() == 0 )
     {
       notify_no_accounts();
-      call_list_remove(current_calls , c->callID);
-      update_call_tree_remove(current_calls, c);
+      sflphone_fail(c);
     }
     else if( account_list_get_by_state( ACCOUNT_STATE_REGISTERED ) == NULL )
     {
       notify_no_registered_accounts();
-      call_list_remove(current_calls , c->callID);
-      update_call_tree_remove(current_calls, c);
+      sflphone_fail(c);
     }
     else
     {
@@ -651,7 +649,6 @@ sflphone_place_call ( call_t * c )
 	// Update history
 	c->history_state = OUTGOING;
 	call_list_add(history, c);
-	//update_call_tree_add(history, c);
   }
 }
 
diff --git a/sflphone-gtk/src/calltree.c b/sflphone-gtk/src/calltree.c
index e54ce348dc168345c38a4739e81ace96cab1f08e..1152595ded5138e628d5828e168336fee7a31205 100644
--- a/sflphone-gtk/src/calltree.c
+++ b/sflphone-gtk/src/calltree.c
@@ -176,12 +176,11 @@ call_mailbox( GtkWidget* widget , gpointer data )
 void 
 toolbar_update_buttons ()
 {
-
 	gtk_widget_set_sensitive( GTK_WIDGET(callButton),       FALSE);
 	gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     FALSE);
 	gtk_widget_set_sensitive( GTK_WIDGET(holdButton),       FALSE);
 	gtk_widget_set_sensitive( GTK_WIDGET(transfertButton),  FALSE);
-	gtk_widget_set_sensitive( GTK_WIDGET(mailboxButton) , TRUE );
+	gtk_widget_set_sensitive( GTK_WIDGET(mailboxButton) ,   FALSE);
 	gtk_widget_set_sensitive( GTK_WIDGET(unholdButton),     FALSE);
 	g_object_ref(holdButton);
 	g_object_ref(unholdButton);
@@ -206,6 +205,7 @@ toolbar_update_buttons ()
 		{
 			case CALL_STATE_INCOMING:
 				gtk_widget_set_sensitive( GTK_WIDGET(pickupButton),     TRUE);
+				//gtk_widget_set_sensitive( GTK_WIDGET(mailboxButton),     TRUE);
 				gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),	TRUE);
 				g_object_ref(callButton);	
 				gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(callButton));
@@ -218,13 +218,14 @@ toolbar_update_buttons ()
 				g_object_ref(holdButton);
 				gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(holdButton));
 				gtk_toolbar_insert(GTK_TOOLBAR(toolbar), unholdButton, 3);
+				//gtk_widget_set_sensitive( GTK_WIDGET(mailboxButton),     TRUE);
 				break;
 			case CALL_STATE_RINGING:
 				gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
 				gtk_widget_set_sensitive( GTK_WIDGET(callButton),     TRUE);
 				break;
 			case CALL_STATE_DIALING:
-				gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
+				if( active_calltree != history )  gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
 				gtk_widget_set_sensitive( GTK_WIDGET(pickupButton),       TRUE);
 				g_object_ref(callButton);
 				gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(callButton));
@@ -258,12 +259,12 @@ toolbar_update_buttons ()
 	{
 		if( account_list_get_size() > 0 )
 		{
-			gtk_widget_set_sensitive( GTK_WIDGET(callButton), TRUE);
+			gtk_widget_set_sensitive( GTK_WIDGET(callButton), TRUE );
+			gtk_widget_set_sensitive( GTK_WIDGET(mailboxButton), TRUE );
 		}
 		else
 		{
 			gtk_widget_set_sensitive( GTK_WIDGET(callButton), FALSE);
-			gtk_widget_set_sensitive( GTK_WIDGET(mailboxButton), FALSE);
 		}
 	}
 }
@@ -274,7 +275,6 @@ selected(GtkTreeSelection *sel, void* data)
 	GtkTreeIter  iter;
 	GValue val;
 	GtkTreeModel *model = (GtkTreeModel*)active_calltree->store;
-	printf("Select !\n");
 
 	if (! gtk_tree_selection_get_selected (sel, &model, &iter))
 		return;
@@ -362,7 +362,8 @@ create_toolbar ()
 	gtk_widget_set_state( GTK_WIDGET(unholdButton), GTK_STATE_INSENSITIVE);
 	g_signal_connect (G_OBJECT (unholdButton), "clicked",
 			G_CALLBACK (unhold), NULL);
-	gtk_widget_show_all(GTK_WIDGET(unholdButton));
+	//gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(unholdButton), -1);
+	//gtk_widget_show_all(GTK_WIDGET(unholdButton));
 
 	image = gtk_image_new_from_file( ICONS_DIR "/hold.svg");
 	holdButton =  gtk_tool_button_new (image, _("On Hold"));