diff --git a/sflphone-client-gnome/src/actions.c b/sflphone-client-gnome/src/actions.c index 28db999a2deeda2e6d1066634148b465b2d4443e..7d8eb3eb07b5335e146011295b8b5842f9bb7cc4 100644 --- a/sflphone-client-gnome/src/actions.c +++ b/sflphone-client-gnome/src/actions.c @@ -696,6 +696,8 @@ sflphone_new_call() peer_name = g_strdup (""); create_new_call (CALL, CALL_STATE_DIALING, "", "", peer_name, peer_number, &c); + c->_history_state = OUTGOING; + calllist_add (current_calls,c); calltree_add_call (current_calls, c, NULL); update_actions(); diff --git a/sflphone-client-gnome/src/contacts/calltree.c b/sflphone-client-gnome/src/contacts/calltree.c index fc95d12eca46c88c8eab0c99cae9e96d3394476e..fc694bfd293000468653fe0bace17425fde94926 100644 --- a/sflphone-client-gnome/src/contacts/calltree.c +++ b/sflphone-client-gnome/src/contacts/calltree.c @@ -351,25 +351,33 @@ calltree_display_call_info(callable_obj_t * c, CallDisplayType display_type, gch DEBUG("Display call info"); - // Get the hostname for this call (NULL if not existent) - hostname = g_strrstr(peer_number, "@"); + // If call is outgoing, keep the hostname, strip it elsewhere + if(c->_type == CALL && c->_history_state == OUTGOING) { - // Test if we are dialing a new number - if(g_strcmp0("", c->_peer_number) != 0) { + display_number = peer_number; - // Strip the hostname if existent - if(hostname) { - display_number = g_strndup(peer_number, hostname - peer_number); + } + else { + + // Get the hostname for this call (NULL if not existent) + hostname = g_strrstr(peer_number, "@"); + + // Test if we are dialing a new number + if(g_strcmp0("", c->_peer_number) != 0) { + + // Strip the hostname if existent + if(hostname) { + display_number = g_strndup(peer_number, hostname - peer_number); + } + else { + display_number = peer_number; + } } else { + display_number = peer_number; } } - else { - - display_number = peer_number; - } - // Different display depending on type switch(display_type) {