Fix a segmentation fault when connecting to a server without a port

fix #3260
This commit is contained in:
louiz’
2017-05-02 14:46:03 +02:00
parent 9db89eb8b0
commit 25d46924bc
4 changed files with 16 additions and 1 deletions
+6
View File
@@ -1,3 +1,9 @@
Version 4.3 - 2017-05-02
========================
- Fix a segmentation fault that occured when trying to connect to an IRC
server without any port configured.
Version 4.2 - 2017-04-26 Version 4.2 - 2017-04-26
======================== ========================
+1 -1
View File
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.0)
project(biboumi) project(biboumi)
set(${PROJECT_NAME}_VERSION_MAJOR 4) set(${PROJECT_NAME}_VERSION_MAJOR 4)
set(${PROJECT_NAME}_VERSION_MINOR 2) set(${PROJECT_NAME}_VERSION_MINOR 3)
set(${PROJECT_NAME}_VERSION_SUFFIX "") set(${PROJECT_NAME}_VERSION_SUFFIX "")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++1y -pedantic -Wall -Wextra") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++1y -pedantic -Wall -Wextra")
+4
View File
@@ -59,6 +59,10 @@ make check %{?_smp_mflags}
%changelog %changelog
* Wed May 2 2017 Le Coz Florent <louiz@louiz.org> - 4.3-1
- Fix a segmentation fault that occured when trying to connect
to an IRC server without any port configured.
* Wed Apr 26 2017 Le Coz Florent <louiz@louiz.org> - 4.2-1 * Wed Apr 26 2017 Le Coz Florent <louiz@louiz.org> - 4.2-1
- Fix a build issue when LiteSQL is absent from the system - Fix a build issue when LiteSQL is absent from the system
+5
View File
@@ -182,6 +182,11 @@ void IrcClient::start()
{ {
if (this->is_connecting() || this->is_connected()) if (this->is_connecting() || this->is_connected())
return; return;
if (this->ports_to_try.empty())
{
this->bridge.send_xmpp_message(this->hostname, "", "Can not connect to IRC server: no port specified.");
return;
}
std::string port; std::string port;
bool tls; bool tls;
std::tie(port, tls) = this->ports_to_try.top(); std::tie(port, tls) = this->ports_to_try.top();