From 156f88b0a12dd2fb65a78c3ce088ce6ba57feafe Mon Sep 17 00:00:00 2001 From: Shane Synan Date: Wed, 29 Jun 2016 17:26:56 -0400 Subject: [PATCH] Sort IRCv3 capabilities before negotiation Sort capabilities before requesting for consistency among networks. This may avoid unexpected cases when some networks offer capabilities in a different order than others. It also looks nicer in logs. --- src/core/coresessioneventprocessor.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/core/coresessioneventprocessor.cpp b/src/core/coresessioneventprocessor.cpp index fa5fc361..ee66717e 100644 --- a/src/core/coresessioneventprocessor.cpp +++ b/src/core/coresessioneventprocessor.cpp @@ -174,6 +174,10 @@ void CoreSessionEventProcessor::processIrcEventCap(IrcEvent *e) capListFinished = true; availableCaps = e->params().at(2).split(' '); } + // Sort capabilities before requesting for consistency among networks. This may avoid + // unexpected cases when some networks offer capabilities in a different order than + // others. It also looks nicer in logs. Not required. + availableCaps.sort(); // Store what capabilities are available QString availableCapName, availableCapValue; for (int i = 0; i < availableCaps.count(); ++i) { -- 2.20.1