Some minor query fixes. Nick changes are also detected by checking if

query with another nick from same address if found.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@999 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Timo Sirainen 2000-12-17 02:20:22 +00:00 committed by cras
commit fc491c5f8d
10 changed files with 160 additions and 48 deletions

View file

@ -116,12 +116,33 @@ QUERY_REC *query_find(SERVER_REC *server, const char *nick)
(void *) nick);
}
void query_change_nick(QUERY_REC *query, const char *nick)
{
char *oldnick;
g_return_if_fail(IS_QUERY(query));
oldnick = query->name;
query->name = g_strdup(nick);
signal_emit("query nick changed", 2, query, oldnick);
g_free(oldnick);
}
void query_change_address(QUERY_REC *query, const char *address)
{
g_return_if_fail(IS_QUERY(query));
g_free_not_null(query->address);
query->address = g_strdup(address);
signal_emit("query address changed", 1, query);
}
void query_change_server(QUERY_REC *query, SERVER_REC *server)
{
g_return_if_fail(IS_QUERY(query));
query->server = server;
signal_emit("query server changed", 2, query, server);
signal_emit("query server changed", 1, query);
}
void queries_init(void)

View file

@ -28,6 +28,8 @@ QUERY_REC *query_create(int chat_type, SERVER_REC *server,
/* Find query by name, if `server' is NULL, search from all servers */
QUERY_REC *query_find(SERVER_REC *server, const char *nick);
void query_change_nick(QUERY_REC *query, const char *nick);
void query_change_address(QUERY_REC *query, const char *address);
void query_change_server(QUERY_REC *query, SERVER_REC *server);
void queries_init(void);