Ticket #10829: Option to copy URL with password_3.patch
File Option to copy URL with password_3.patch, 22.0 KB (added by , 9 years ago) |
---|
-
src/engine/ControlSocket.cpp
7 7 #include "proxy.h" 8 8 #include "servercapabilities.h" 9 9 #include "sizeformatting_base.h" 10 #include "server.h" 10 11 11 12 #include <libfilezilla/event_loop.hpp> 12 13 #include <libfilezilla/iputils.hpp> … … 1044 1045 1045 1046 const int proxy_type = engine_.GetOptions().GetOptionVal(OPTION_PROXY_TYPE); 1046 1047 if (proxy_type > CProxySocket::unknown && proxy_type < CProxySocket::proxytype_count && !m_pCurrentServer->GetBypassProxy()) { 1047 LogMessage(MessageType::Status, _("Connecting to %s through %s proxy"), m_pCurrentServer->Format Host(), CProxySocket::Name(static_cast<CProxySocket::ProxyType>(proxy_type)));1048 LogMessage(MessageType::Status, _("Connecting to %s through %s proxy"), m_pCurrentServer->FormatServer(SERVER_HOST_PORT), CProxySocket::Name(static_cast<CProxySocket::ProxyType>(proxy_type))); 1048 1049 1049 1050 host = engine_.GetOptions().GetOption(OPTION_PROXY_HOST); 1050 1051 port = engine_.GetOptions().GetOptionVal(OPTION_PROXY_PORT); -
src/engine/ftpcontrolsocket.cpp
11 11 #include "tlssocket.h" 12 12 #include "transfersocket.h" 13 13 #include "proxy.h" 14 #include "server.h" 14 15 15 16 #include <libfilezilla/file.hpp> 16 17 #include <libfilezilla/iputils.hpp> … … 526 527 pData->loginSequence.push_back(cmd); 527 528 } 528 529 // User@host 529 t_loginCommand cmd = {false, false, loginCommandType::user, wxString::Format(_T("USER %s@%s"), server.GetUser(), server.Format Host())};530 t_loginCommand cmd = {false, false, loginCommandType::user, wxString::Format(_T("USER %s@%s"), server.GetUser(), server.FormatServer(SERVER_HOST_PORT))}; 530 531 pData->loginSequence.push_back(cmd); 531 532 532 533 // Password … … 558 559 // Site or Open 559 560 t_loginCommand cmd = {false, false, loginCommandType::user, _T("")}; 560 561 if (pData->ftp_proxy_type == 2) 561 cmd.command = _T("SITE ") + server.Format Host();562 cmd.command = _T("SITE ") + server.FormatServer(SERVER_HOST_PORT); 562 563 else 563 cmd.command = _T("OPEN ") + server.Format Host();564 cmd.command = _T("OPEN ") + server.FormatServer(SERVER_HOST_PORT); 564 565 pData->loginSequence.push_back(cmd); 565 566 566 567 // User … … 584 585 else if (pData->ftp_proxy_type == 4) { 585 586 wxString proxyUser = engine_.GetOptions().GetOption(OPTION_FTP_PROXY_USER); 586 587 wxString proxyPass = engine_.GetOptions().GetOption(OPTION_FTP_PROXY_PASS); 587 wxString host = server.Format Host();588 wxString host = server.FormatServer(SERVER_HOST_PORT); 588 589 wxString user = server.GetUser(); 589 590 wxString account = server.GetAccount(); 590 591 proxyUser.Replace(_T("%"), _T("%%")); … … 4244 4245 return FZ_REPLY_ERROR; 4245 4246 } 4246 4247 4247 LogMessage(MessageType::Status, _("Connecting to %s through %s proxy"), server.Format Host(), _T("FTP")); // @translator: Connecting to ftp.example.com through SOCKS5 proxy4248 LogMessage(MessageType::Status, _("Connecting to %s through %s proxy"), server.FormatServer(SERVER_HOST_PORT), _T("FTP")); // @translator: Connecting to ftp.example.com through SOCKS5 proxy 4248 4249 } 4249 4250 else { 4250 4251 pData->ftp_proxy_type = 0; -
src/engine/httpcontrolsocket.cpp
343 343 m_pCurOpData = pData; 344 344 m_pHttpOpData = pData; 345 345 346 m_current_uri = wxURI(m_pCurrentServer->FormatServer( ) + pData->remotePath.FormatFilename(pData->remoteFile));346 m_current_uri = wxURI(m_pCurrentServer->FormatServer(SERVER_USER_HOST_PORT) + pData->remotePath.FormatFilename(pData->remoteFile)); 347 347 348 348 if (!localFile.empty()) { 349 349 pData->localFileSize = fz::local_filesys::get_size(fz::to_native(pData->localFile)); -
src/engine/server.cpp
47 47 return protocolInfos[i]; 48 48 } 49 49 50 //TODO: move this to a new file with a proper URLEncode function, confer file_utils.cpp 51 static const bool needURLEncode(const wxString& string) 52 { 53 const wxWX2MBbuf utf8 = string.mb_str(wxConvUTF8); 54 55 if (!utf8) 56 return true; 57 58 const char* p = utf8; 59 while (*p) 60 { 61 // RFC3986 62 const unsigned char c = (unsigned char)*p++; 63 if (! ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') || (c >= '0' && c <= '9') || 64 c == '-' || c == '.' || c == '_' || c == '~') ) 65 { 66 return true; 67 } 68 } 69 70 return false; 71 } 72 50 73 CServer::CServer() 51 74 { 52 75 Initialize(); … … 637 660 return m_maximumMultipleConnections; 638 661 } 639 662 640 wxString CServer::Format Host(bool always_omit_port /*=false*/) const663 wxString CServer::FormatServer(enum FormatServerType formatType) const 641 664 { 642 wxString host = m_host; 665 const t_protocolInfo& info = GetProtocolInfo(m_protocol); 666 wxString server = m_host; 643 667 644 if ( host.Find(':') != -1)645 host = _T("[") + host+ _T("]");668 if (server.Find(':') != -1) 669 server = _T("[") + server + _T("]"); 646 670 647 if (!always_omit_port) 671 if (formatType == SERVER_HOST_ONLY) 672 return server; 673 674 if (m_port != GetDefaultPort(m_protocol)) 675 server += wxString::Format(_T(":%d"), m_port); 676 677 if (formatType == SERVER_HOST_PORT) 678 return server; 679 680 if (m_logonType != ANONYMOUS) 648 681 { 649 if (m_port != GetDefaultPort(m_protocol)) 650 host += wxString::Format(_T(":%d"), m_port); 682 if (formatType == SERVER_URL_PASSWORD && !needURLEncode(GetPass())) 683 server = GetUser() + _T(":") + GetPass() + _T("@") + server; 684 else 685 server = GetUser() + _T("@") + server; 651 686 } 652 653 return host; 654 } 655 656 wxString CServer::FormatServer(const bool always_include_prefix /*=false*/) const 657 { 658 wxString server = FormatHost(); 659 660 if (m_logonType != ANONYMOUS) 661 server = GetUser() + _T("@") + server; 662 663 const t_protocolInfo& info = GetProtocolInfo(m_protocol); 687 688 if (formatType == SERVER_USER_HOST_PORT) 689 { 690 if (info.alwaysShowPrefix || m_port != info.defaultPort) 691 formatType = SERVER_URL; 692 else 693 return server; 694 } 695 664 696 if (!info.prefix.empty()) 665 697 { 666 if (always_include_prefix || info.alwaysShowPrefix) 667 server = info.prefix + _T("://") + server; 668 else if (m_port != info.defaultPort) 669 server = info.prefix + _T("://") + server; 698 server = info.prefix + _T("://") + server; 670 699 } 671 700 672 701 return server; -
src/engine/sftpcontrolsocket.cpp
355 355 356 356 int CSftpControlSocket::Connect(const CServer &server) 357 357 { 358 LogMessage(MessageType::Status, _("Connecting to %s..."), server.Format Host());358 LogMessage(MessageType::Status, _("Connecting to %s..."), server.FormatServer(SERVER_HOST_PORT)); 359 359 SetWait(true); 360 360 361 361 m_sftpEncryptionDetails = CSftpEncryptionNotification(); -
src/include/server.h
53 53 MODE_PASSIVE 54 54 }; 55 55 56 enum FormatServerType 57 { 58 SERVER_HOST_ONLY, 59 SERVER_HOST_PORT, 60 SERVER_USER_HOST_PORT, 61 SERVER_URL, 62 SERVER_URL_PASSWORD 63 }; 64 65 56 66 enum CharsetEncoding 57 67 { 58 68 ENCODING_AUTO, … … 111 121 void SetPasvMode(PasvMode pasvMode); 112 122 void MaximumMultipleConnections(int maximum); 113 123 114 wxString FormatHost(bool always_omit_port = false) const; 115 wxString FormatServer(const bool always_include_prefix = false) const; 124 wxString FormatServer(enum FormatServerType formatType) const; 116 125 117 126 bool SetEncodingType(CharsetEncoding type, const wxString& encoding = wxString()); 118 127 bool SetCustomEncoding(const wxString& encoding); -
src/interface/edithandler.cpp
8 8 #include "queue.h" 9 9 #include "window_state_manager.h" 10 10 #include "xrc_helper.h" 11 #include "server.h" 11 12 12 13 #include <libfilezilla/local_filesys.hpp> 13 14 … … 688 689 int CEditHandler::DisplayChangeNotification(CEditHandler::fileType type, std::list<CEditHandler::t_fileData>::const_iterator iter, bool& remove) 689 690 { 690 691 CChangedFileDialog dlg; 692 enum FormatServerType serverInfo; 693 691 694 if (!dlg.Load(wxTheApp->GetTopWindow(), _T("ID_CHANGEDFILE"))) 692 695 return -1; 693 696 if (type == remote) … … 716 719 else 717 720 dlg.SetChildLabel(XRCID("ID_OPENEDAS"), file); 718 721 } 719 dlg.SetChildLabel(XRCID("ID_SERVER"), iter->server.FormatServer()); 722 serverInfo = SERVER_USER_HOST_PORT; 723 724 dlg.SetChildLabel(XRCID("ID_SERVER"), iter->server.FormatServer(serverInfo)); 720 725 dlg.SetChildLabel(XRCID("ID_REMOTEPATH"), iter->remotePath.GetPath()); 721 726 722 727 dlg.GetSizer()->Fit(&dlg); … … 1117 1122 pListCtrl->SetItem(i, COLUMN_STATUS, _("Unknown")); 1118 1123 break; 1119 1124 } 1120 pListCtrl->SetItem(i, COLUMN_REMOTEPATH, iter->server.FormatServer( ) + iter->remotePath.GetPath());1125 pListCtrl->SetItem(i, COLUMN_REMOTEPATH, iter->server.FormatServer(SERVER_USER_HOST_PORT) + iter->remotePath.GetPath()); 1121 1126 CEditHandler::t_fileData* pData = new CEditHandler::t_fileData(*iter); 1122 1127 pListCtrl->SetItemPtrData(i, (wxUIntPtr)pData); 1123 1128 } … … 1145 1150 pListCtrl->SetItem(i, COLUMN_STATUS, _("Unknown")); 1146 1151 break; 1147 1152 } 1148 pListCtrl->SetItem(i, COLUMN_REMOTEPATH, iter->server.FormatServer( ) + iter->remotePath.GetPath());1153 pListCtrl->SetItem(i, COLUMN_REMOTEPATH, iter->server.FormatServer(SERVER_USER_HOST_PORT) + iter->remotePath.GetPath()); 1149 1154 CEditHandler::t_fileData* pData = new CEditHandler::t_fileData(*iter); 1150 1155 pListCtrl->SetItemPtrData(i, (wxUIntPtr)pData); 1151 1156 } -
src/interface/file_utils.cpp
20 20 if (!utf8) 21 21 return wxString(); 22 22 23 //TODO: create a standalone URLEncode function 23 24 const char* p = utf8; 24 25 while (*p) 25 26 { -
src/interface/loginmanager.cpp
3 3 4 4 #include "dialogex.h" 5 5 #include "filezillaapp.h" 6 #include "server.h" 6 7 7 8 #include <algorithm> 8 9 … … 59 60 pwdDlg.GetSizer()->Show(XRCCTRL(pwdDlg, "ID_REMEMBER", wxCheckBox), canRemember, true); 60 61 XRCCTRL(pwdDlg, "ID_CHALLENGE", wxTextCtrl)->SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_BTNFACE)); 61 62 } 62 XRCCTRL(pwdDlg, "ID_HOST", wxStaticText)->SetLabel(server.Format Host());63 XRCCTRL(pwdDlg, "ID_HOST", wxStaticText)->SetLabel(server.FormatServer(SERVER_HOST_PORT)); 63 64 64 65 if (server.GetUser().empty()) { 65 66 pwdDlg.SetTitle(_("Enter username and password")); -
src/interface/Mainfrm.cpp
830 830 CSpeedLimitsDialog dlg; 831 831 dlg.Run(this); 832 832 } 833 else if (event.GetId() == XRCID("ID_MENU_EDIT_URLPASSWORD")) { 834 if (event.IsChecked()) { 835 if (wxMessageBoxEx(_("This option will enable the ability to copy password in clear in the clipboard.\nThis is insecure, are you sure you want to continue?"), _("Include password in URL"), wxICON_WARNING | wxYES_NO) == wxNO) 836 m_pMenuBar->Check(XRCID("ID_MENU_EDIT_URLPASSWORD"), false); 837 else 838 COptions::Get()->SetOption(OPTION_PASSWORD_IN_URL, 1); 839 } 840 else 841 COptions::Get()->SetOption(OPTION_PASSWORD_IN_URL, 0); 842 } 833 843 else if (event.GetId() == m_comparisonToggleAcceleratorId) { 834 844 CState* pState = CContextManager::Get()->GetCurrentContext(); 835 845 if (!pState) -
src/interface/manual_transfer.cpp
7 7 #include "queue.h" 8 8 #include "QueueView.h" 9 9 #include "xrc_helper.h" 10 #include "server.h" 10 11 11 12 #include <libfilezilla/local_filesys.hpp> 12 13 … … 159 160 { 160 161 if (m_pServer) 161 162 { 162 XRCCTRL(*this, "ID_HOST", wxTextCtrl)->ChangeValue(m_pServer->Format Host(true));163 XRCCTRL(*this, "ID_HOST", wxTextCtrl)->ChangeValue(m_pServer->FormatServer(SERVER_HOST_ONLY)); 163 164 unsigned int port = m_pServer->GetPort(); 164 165 165 166 if (port != CServer::GetDefaultPort(m_pServer->GetProtocol())) … … 461 462 return false; 462 463 } 463 464 464 xrc_call(*this, "ID_HOST", &wxTextCtrl::ChangeValue, server.Format Host(true));465 xrc_call(*this, "ID_HOST", &wxTextCtrl::ChangeValue, server.FormatServer(SERVER_HOST_ONLY)); 465 466 xrc_call(*this, "ID_PORT", &wxTextCtrl::ChangeValue, wxString::Format(_T("%d"), server.GetPort())); 466 467 467 468 protocolName = CServer::GetProtocolName(server.GetProtocol()); -
src/interface/menu_bar.cpp
86 86 menubar->Check(XRCID("ID_VIEW_REMOTETREE"), COptions::Get()->GetOptionVal(OPTION_SHOW_TREE_REMOTE) != 0); 87 87 menubar->Check(XRCID("ID_MENU_VIEW_FILELISTSTATUSBAR"), COptions::Get()->GetOptionVal(OPTION_FILELIST_STATUSBAR) != 0); 88 88 menubar->Check(XRCID("ID_MENU_TRANSFER_PRESERVETIMES"), COptions::Get()->GetOptionVal(OPTION_PRESERVE_TIMESTAMPS) != 0); 89 89 menubar->Check(XRCID("ID_MENU_EDIT_URLPASSWORD"), COptions::Get()->GetOptionVal(OPTION_PASSWORD_IN_URL) != 0); 90 90 91 switch (COptions::Get()->GetOptionVal(OPTION_ASCIIBINARY)) 91 92 { 92 93 case 1: … … 373 374 if (options.test(OPTION_PRESERVE_TIMESTAMPS)) { 374 375 Check(XRCID("ID_MENU_TRANSFER_PRESERVETIMES"), COptions::Get()->GetOptionVal(OPTION_PRESERVE_TIMESTAMPS) != 0); 375 376 } 377 if (options.test(OPTION_PASSWORD_IN_URL)) { 378 Check(XRCID("ID_MENU_EDIT_URLPASSWORD"), COptions::Get()->GetOptionVal(OPTION_PASSWORD_IN_URL) != 0); 379 } 376 380 if (options.test(OPTION_SHOW_TREE_LOCAL)) { 377 381 Check(XRCID("ID_VIEW_LOCALTREE"), COptions::Get()->GetOptionVal(OPTION_SHOW_TREE_LOCAL) != 0); 378 382 } -
src/interface/Options.cpp
194 194 { "Persistent Choices", number, _T("0"), normal }, 195 195 { "Queue completion action", number, _T("1"), normal }, 196 196 { "Queue completion command", string, _T(""), normal }, 197 { "Include passwords in URL", number, _T("0"), normal }, 197 198 198 199 // Default/internal options 199 200 { "Config Location", string, _T(""), default_only }, -
src/interface/Options.h
98 98 OPTION_PERSISTENT_CHOICES, 99 99 OPTION_QUEUE_COMPLETION_ACTION, 100 100 OPTION_QUEUE_COMPLETION_COMMAND, 101 OPTION_PASSWORD_IN_URL, 101 102 102 103 // Default/internal options 103 104 OPTION_DEFAULT_SETTINGSDIR, // guaranteed to be (back)slash-terminated -
src/interface/queue.cpp
6 6 #include "sizeformatting.h" 7 7 #include "timeformatting.h" 8 8 #include "themeprovider.h" 9 #include "server.h" 9 10 10 11 CQueueItem::CQueueItem(CQueueItem* parent) 11 12 : m_parent(parent) … … 391 392 392 393 wxString CServerItem::GetName() const 393 394 { 394 return m_server.FormatServer( );395 return m_server.FormatServer(SERVER_USER_HOST_PORT); 395 396 } 396 397 397 398 void CServerItem::AddChild(CQueueItem* pItem) -
src/interface/quickconnectbar.cpp
7 7 #include "loginmanager.h" 8 8 #include "Mainfrm.h" 9 9 #include "asksavepassworddialog.h" 10 #include "server.h" 10 11 11 12 BEGIN_EVENT_TABLE(CQuickconnectBar, wxPanel) 12 13 EVT_BUTTON(XRCID("ID_QUICKCONNECT_OK"), CQuickconnectBar::OnQuickconnect) … … 86 87 return; 87 88 } 88 89 89 host = server.Format Host(true);90 host = server.FormatServer(SERVER_HOST_ONLY); 90 91 ServerProtocol protocol = server.GetProtocol(); 91 92 switch (protocol) 92 93 { … … 159 160 iter != m_recentServers.end(); 160 161 ++iter, ++i) 161 162 { 162 wxString name(iter->FormatServer( ));163 wxString name(iter->FormatServer(SERVER_USER_HOST_PORT)); 163 164 name.Replace(_T("&"), _T("&&")); 164 165 pMenu->Append(10 + i, name); 165 166 } -
src/interface/RemoteListView.cpp
21 21 #include <wx/clipbrd.h> 22 22 #include "sizeformatting.h" 23 23 #include "timeformatting.h" 24 #include "server.h" 24 25 #ifdef __WXMSW__ 25 26 #include "shellapi.h" 26 27 #include "commctrl.h" … … 2523 2524 } 2524 2525 2525 2526 const CServerPath& path = m_pDirectoryListing->path; 2526 const wxString server = pServer->FormatServer(true); 2527 2528 wxString server; 2529 if (COptions::Get()->GetOptionVal(OPTION_PASSWORD_IN_URL) != 0) 2530 server = pServer->FormatServer(SERVER_URL_PASSWORD); 2531 else 2532 server = pServer->FormatServer(SERVER_URL); 2533 2527 2534 if (selected_item_list.size() == 1) 2528 2535 { 2529 2536 wxString url = server; … … 2530 2537 url += path.FormatFilename(selected_item_list.front().name, false); 2531 2538 2532 2539 // Poor mans URLencode 2540 // TODO: use a proper URLEncode function, confer file_utils.cpp 2533 2541 url.Replace(_T(" "), _T("%20")); 2534 2542 2535 2543 wxTheClipboard->SetData(new wxURLDataObject(url)); … … 2549 2557 } 2550 2558 2551 2559 // Poor mans URLencode 2560 // TODO: use a proper URLEncode function, confer file_utils.cpp 2552 2561 urls.Replace(_T(" "), _T("%20")); 2553 2562 2554 2563 wxTheClipboard->SetData(new wxTextDataObject(urls)); -
src/interface/RemoteTreeView.cpp
13 13 #include "QueueView.h" 14 14 #include "themeprovider.h" 15 15 #include "Options.h" 16 #include "server.h" 16 17 17 18 #include <algorithm> 18 19 … … 1382 1383 return; 1383 1384 } 1384 1385 1385 wxString url = pServer->FormatServer(true); 1386 wxString url; 1387 if (COptions::Get()->GetOptionVal(OPTION_PASSWORD_IN_URL) != 0) 1388 url = pServer->FormatServer(SERVER_URL_PASSWORD); 1389 else 1390 url = pServer->FormatServer(SERVER_URL); 1391 1386 1392 url += path.GetPath(); 1387 1393 1388 1394 // Poor mans URLencode 1395 // TODO: use a proper URLEncode function, confer file_utils.cpp 1389 1396 url.Replace(_T(" "), _T("%20")); 1390 1397 1391 1398 wxTheClipboard->SetData(new wxURLDataObject(url)); -
src/interface/resources/xrc/menus.xrc
49 49 <object class="wxMenuItem" name="ID_MENU_EDIT_CLEARPRIVATEDATA"> 50 50 <label>&Clear private data...</label> 51 51 </object> 52 <object class="wxMenuItem" name="ID_MENU_EDIT_URLPASSWORD"> 53 <label>Show &password in URL...</label> 54 <checkable>1</checkable> 55 </object> 52 56 <object class="separator"/> 53 57 <object class="wxMenuItem" name="wxID_PREFERENCES"> 54 58 <label>&Settings...</label> -
src/interface/sitemanager_dialog.cpp
14 14 #include "xmlfunctions.h" 15 15 #include "fzputtygen_interface.h" 16 16 #include "xrc_helper.h" 17 #include "server.h" 17 18 18 19 #include <wx/dcclient.h> 19 20 #include <wx/dnd.h> … … 1000 1001 return false; 1001 1002 } 1002 1003 1003 XRCCTRL(*this, "ID_HOST", wxTextCtrl)->ChangeValue(server.Format Host(true));1004 XRCCTRL(*this, "ID_HOST", wxTextCtrl)->ChangeValue(server.FormatServer(SERVER_HOST_ONLY)); 1004 1005 if (server.GetPort() != CServer::GetDefaultPort(server.GetProtocol())) { 1005 1006 XRCCTRL(*this, "ID_PORT", wxTextCtrl)->ChangeValue(wxString::Format(_T("%d"), server.GetPort())); 1006 1007 } … … 1623 1624 xrc_call(*this, "ID_CONNECT", &wxButton::Enable, true); 1624 1625 1625 1626 xrc_call(*this, "ID_HOST", &wxWindow::Enable, !predefined); 1626 xrc_call(*this, "ID_HOST", &wxTextCtrl::ChangeValue, site_data->m_server.Format Host(true));1627 xrc_call(*this, "ID_HOST", &wxTextCtrl::ChangeValue, site_data->m_server.FormatServer(SERVER_HOST_ONLY)); 1627 1628 unsigned int port = site_data->m_server.GetPort(); 1628 1629 1629 1630 if (port != CServer::GetDefaultPort(site_data->m_server.GetProtocol())) -
src/interface/state.cpp
10 10 #include "remote_recursive_operation.h" 11 11 #include "listingcomparison.h" 12 12 #include "xrc_helper.h" 13 #include "server.h" 13 14 14 15 #include <libfilezilla/local_filesys.hpp> 15 16 … … 469 470 470 471 const wxString& name = server->GetName(); 471 472 if (!name.empty()) 472 m_title = name + _T(" - ") + server->FormatServer( );473 m_title = name + _T(" - ") + server->FormatServer(SERVER_USER_HOST_PORT); 473 474 else 474 m_title = server->FormatServer( );475 m_title = server->FormatServer(SERVER_USER_HOST_PORT); 475 476 } 476 477 else { 477 478 m_pServer = 0; -
src/interface/statuslinectrl.cpp
4 4 #include <wx/dcbuffer.h> 5 5 #include "Options.h" 6 6 #include "sizeformatting.h" 7 #include "server.h" 7 8 8 9 #include <algorithm> 9 10 … … 240 241 m_statusText = _("Waiting for transfer to be cancelled"); 241 242 break; 242 243 case t_EngineData::connect: 243 m_statusText = wxString::Format(_("Connecting to %s"), m_pEngineData->lastServer.FormatServer( ));244 m_statusText = wxString::Format(_("Connecting to %s"), m_pEngineData->lastServer.FormatServer(SERVER_USER_HOST_PORT)); 244 245 break; 245 246 default: 246 247 m_statusText = _("Transferring");