summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlouiz’ <louiz@louiz.org>2018-05-23 01:09:19 +0200
committerlouiz’ <louiz@louiz.org>2018-05-23 01:09:36 +0200
commit7d3c1ed92733a05ab4282993ffe58fb88a1b50e9 (patch)
treeceff2349e60cba773a28168c3adcc7cb79b3d2b2
parent1c4620d992d64e585c028659b0001b5f8ba94235 (diff)
downloadbiboumi-7d3c1ed92733a05ab4282993ffe58fb88a1b50e9.tar.gz
biboumi-7d3c1ed92733a05ab4282993ffe58fb88a1b50e9.tar.bz2
biboumi-7d3c1ed92733a05ab4282993ffe58fb88a1b50e9.tar.xz
biboumi-7d3c1ed92733a05ab4282993ffe58fb88a1b50e9.zip
Do not use (or present to the user) the Address field in fixed mode
fix #3359
-rw-r--r--src/irc/irc_client.cpp3
-rw-r--r--src/xmpp/biboumi_adhoc_commands.cpp3
2 files changed, 4 insertions, 2 deletions
diff --git a/src/irc/irc_client.cpp b/src/irc/irc_client.cpp
index d0b2153..d7fa2cd 100644
--- a/src/irc/irc_client.cpp
+++ b/src/irc/irc_client.cpp
@@ -195,7 +195,8 @@ void IrcClient::start()
# ifdef BOTAN_FOUND
this->credential_manager.set_trusted_fingerprint(options.col<Database::TrustedFingerprint>());
# endif
- if (!options.col<Database::Address>().empty())
+ if (Config::get("fixed_irc_server", "").empty() &&
+ !options.col<Database::Address>().empty())
address = options.col<Database::Address>();
#endif
this->bridge.send_xmpp_message(this->hostname, "", "Connecting to " +
diff --git a/src/xmpp/biboumi_adhoc_commands.cpp b/src/xmpp/biboumi_adhoc_commands.cpp
index b62dcfc..3bd2e5a 100644
--- a/src/xmpp/biboumi_adhoc_commands.cpp
+++ b/src/xmpp/biboumi_adhoc_commands.cpp
@@ -230,6 +230,7 @@ void ConfigureIrcServerStep1(XmppComponent&, AdhocSession& session, XmlNode& com
XmlSubNode instructions(x, "instructions");
instructions.set_inner("Edit the form, to configure the settings of the IRC server " + server_domain);
+ if (Config::get("fixed_irc_server", "").empty())
{
XmlSubNode field(x, "field");
field["var"] = "address";
@@ -409,7 +410,7 @@ void ConfigureIrcServerStep2(XmppComponent&, AdhocSession& session, XmlNode& com
const XmlNode* value = field->get_child("value", "jabber:x:data");
const std::vector<const XmlNode*> values = field->get_children("value", "jabber:x:data");
- if (field->get_tag("var") == "address" && value)
+ if (field->get_tag("var") == "address" && value && Config::get("fixed_irc_server", "").empty())
options.col<Database::Address>() = value->get_inner();
if (field->get_tag("var") == "ports")