irc: change default chantypes from "#&+!" to "#&"

The default chantypes was conflicting with
irc_server_prefix_chars_default ("@+").
This commit is contained in:
Sébastien Helleu 2020-06-21 10:21:22 +02:00
parent 9446610452
commit 4a42cda3a5
4 changed files with 8 additions and 7 deletions

View File

@ -65,6 +65,7 @@ Bug fixes::
* exec: fix use of same task id for different tasks (issue #1491)
* fifo: fix errors when writing in the FIFO pipe (issue #713)
* guile: enable again /guile eval (issue #1514)
* irc: use new default chantypes "#&" when the server does not send it
* irc: add support of optional server in info "irc_is_nick", fix check of nick using UTF8MAPPING isupport value (issue #1528)
* irc: fix add of ignore with flags in regex, display full ignore mask in list of ignores (issue #1518)
* irc: do not remove spaces at the end of users messages received (issue #1513)

View File

@ -40,6 +40,10 @@
#include "irc-input.h"
/* default CHANTYPES */
char *irc_channel_default_chantypes = "#&";
/*
* Checks if a channel pointer is valid for a server.
*
@ -671,7 +675,7 @@ irc_channel_is_channel (struct t_irc_server *server, const char *string)
first_char[1] = '\0';
return (strpbrk (first_char,
(server && server->chantypes) ?
server->chantypes : IRC_CHANNEL_DEFAULT_CHANTYPES)) ?
server->chantypes : irc_channel_default_chantypes)) ?
1 : 0;
}

View File

@ -22,8 +22,6 @@
#include <time.h>
#define IRC_CHANNEL_DEFAULT_CHANTYPES "#&+!"
/* channel types */
#define IRC_CHANNEL_TYPE_UNKNOWN -1
#define IRC_CHANNEL_TYPE_CHANNEL 0
@ -81,6 +79,8 @@ struct t_irc_channel
struct t_irc_channel *next_channel; /* link to next channel */
};
extern char *irc_channel_default_chantypes;
extern int irc_channel_valid (struct t_irc_server *server,
struct t_irc_channel *channel);
extern struct t_irc_channel *irc_channel_search (struct t_irc_server *server,

View File

@ -67,10 +67,6 @@ TEST(IrcChannel, IsChannel)
LONGS_EQUAL(1, irc_channel_is_channel (NULL, "##abc"));
LONGS_EQUAL(1, irc_channel_is_channel (NULL, "&abc"));
LONGS_EQUAL(1, irc_channel_is_channel (NULL, "&&abc"));
LONGS_EQUAL(1, irc_channel_is_channel (NULL, "+abc"));
LONGS_EQUAL(1, irc_channel_is_channel (NULL, "++abc"));
LONGS_EQUAL(1, irc_channel_is_channel (NULL, "!abc"));
LONGS_EQUAL(1, irc_channel_is_channel (NULL, "!!abc"));
/* server with chantypes = "#" */
server = irc_server_alloc ("my_ircd");