aboutsummaryrefslogtreecommitdiffstats
path: root/protocols/bee_chat.c
diff options
context:
space:
mode:
authorIndent <please@skip.me>2015-02-19 02:47:20 -0300
committerdequis <dx@dxzone.com.ar>2015-02-20 19:50:54 -0300
commit5ebff60479fc7a9f7f50ac03b124c91d4e6ebe11 (patch)
tree9fc0d50cb1f4bc9768d9f00de94eafd876bb55b0 /protocols/bee_chat.c
parentaf359b4316f9d392c6b752495a1b2ed631576ed8 (diff)
Reindent everything to K&R style with tabs
Used uncrustify, with the configuration file in ./doc/uncrustify.cfg Commit author set to "Indent <please@skip.me>" so that it's easier to skip while doing git blame.
Diffstat (limited to 'protocols/bee_chat.c')
-rw-r--r--protocols/bee_chat.c295
1 files changed, 158 insertions, 137 deletions
diff --git a/protocols/bee_chat.c b/protocols/bee_chat.c
index e1d07925..be193405 100644
--- a/protocols/bee_chat.c
+++ b/protocols/bee_chat.c
@@ -1,4 +1,4 @@
- /********************************************************************\
+/********************************************************************\
* BitlBee -- An IRC to other IM-networks gateway *
* *
* Copyright 2002-2010 Wilmer van der Gaast and others *
@@ -26,230 +26,251 @@
#define BITLBEE_CORE
#include "bitlbee.h"
-struct groupchat *imcb_chat_new( struct im_connection *ic, const char *handle )
+struct groupchat *imcb_chat_new(struct im_connection *ic, const char *handle)
{
- struct groupchat *c = g_new0( struct groupchat, 1 );
+ struct groupchat *c = g_new0(struct groupchat, 1);
bee_t *bee = ic->bee;
-
+
/* This one just creates the conversation structure, user won't see
anything yet until s/he is joined to the conversation. (This
allows you to add other already present participants first.) */
-
- ic->groupchats = g_slist_prepend( ic->groupchats, c );
+
+ ic->groupchats = g_slist_prepend(ic->groupchats, c);
c->ic = ic;
- c->title = g_strdup( handle );
- c->topic = g_strdup_printf( "BitlBee groupchat: \"%s\". Please keep in mind that root-commands won't work here. Have fun!", c->title );
-
- if( set_getbool( &ic->bee->set, "debug" ) )
- imcb_log( ic, "Creating new conversation: (id=%p,handle=%s)", c, handle );
-
- if( bee->ui->chat_new )
- bee->ui->chat_new( bee, c );
-
+ c->title = g_strdup(handle);
+ c->topic = g_strdup_printf(
+ "BitlBee groupchat: \"%s\". Please keep in mind that root-commands won't work here. Have fun!",
+ c->title);
+
+ if (set_getbool(&ic->bee->set, "debug")) {
+ imcb_log(ic, "Creating new conversation: (id=%p,handle=%s)", c, handle);
+ }
+
+ if (bee->ui->chat_new) {
+ bee->ui->chat_new(bee, c);
+ }
+
return c;
}
-void imcb_chat_name_hint( struct groupchat *c, const char *name )
+void imcb_chat_name_hint(struct groupchat *c, const char *name)
{
bee_t *bee = c->ic->bee;
-
- if( bee->ui->chat_name_hint )
- bee->ui->chat_name_hint( bee, c, name );
+
+ if (bee->ui->chat_name_hint) {
+ bee->ui->chat_name_hint(bee, c, name);
+ }
}
-void imcb_chat_free( struct groupchat *c )
+void imcb_chat_free(struct groupchat *c)
{
struct im_connection *ic = c->ic;
bee_t *bee = ic->bee;
GList *ir;
-
- if( bee->ui->chat_free )
- bee->ui->chat_free( bee, c );
-
- if( set_getbool( &ic->bee->set, "debug" ) )
- imcb_log( ic, "You were removed from conversation %p", c );
-
- ic->groupchats = g_slist_remove( ic->groupchats, c );
-
- for( ir = c->in_room; ir; ir = ir->next )
- g_free( ir->data );
- g_list_free( c->in_room );
- g_free( c->title );
- g_free( c->topic );
- g_free( c );
+
+ if (bee->ui->chat_free) {
+ bee->ui->chat_free(bee, c);
+ }
+
+ if (set_getbool(&ic->bee->set, "debug")) {
+ imcb_log(ic, "You were removed from conversation %p", c);
+ }
+
+ ic->groupchats = g_slist_remove(ic->groupchats, c);
+
+ for (ir = c->in_room; ir; ir = ir->next) {
+ g_free(ir->data);
+ }
+ g_list_free(c->in_room);
+ g_free(c->title);
+ g_free(c->topic);
+ g_free(c);
}
-static gboolean handle_is_self( struct im_connection *ic, const char *handle )
+static gboolean handle_is_self(struct im_connection *ic, const char *handle)
{
- return ( ic->acc->prpl->handle_is_self ) ?
- ic->acc->prpl->handle_is_self( ic, handle ) :
- ( ic->acc->prpl->handle_cmp( ic->acc->user, handle ) == 0 );
+ return (ic->acc->prpl->handle_is_self) ?
+ ic->acc->prpl->handle_is_self(ic, handle) :
+ (ic->acc->prpl->handle_cmp(ic->acc->user, handle) == 0);
}
-void imcb_chat_msg( struct groupchat *c, const char *who, char *msg, uint32_t flags, time_t sent_at )
+void imcb_chat_msg(struct groupchat *c, const char *who, char *msg, uint32_t flags, time_t sent_at)
{
struct im_connection *ic = c->ic;
bee_t *bee = ic->bee;
bee_user_t *bu;
gboolean temp;
char *s;
-
+
/* Gaim sends own messages through this too. IRC doesn't want this, so kill them */
- if( handle_is_self( ic, who ) )
+ if (handle_is_self(ic, who)) {
return;
-
- bu = bee_user_by_handle( bee, ic, who );
- temp = ( bu == NULL );
-
- if( temp )
- bu = bee_user_new( bee, ic, who, BEE_USER_ONLINE );
-
- s = set_getstr( &ic->bee->set, "strip_html" );
- if( ( g_strcasecmp( s, "always" ) == 0 ) ||
- ( ( ic->flags & OPT_DOES_HTML ) && s ) )
- strip_html( msg );
-
- if( bee->ui->chat_msg )
- bee->ui->chat_msg( bee, c, bu, msg, sent_at );
-
- if( temp )
- bee_user_free( bee, bu );
+ }
+
+ bu = bee_user_by_handle(bee, ic, who);
+ temp = (bu == NULL);
+
+ if (temp) {
+ bu = bee_user_new(bee, ic, who, BEE_USER_ONLINE);
+ }
+
+ s = set_getstr(&ic->bee->set, "strip_html");
+ if ((g_strcasecmp(s, "always") == 0) ||
+ ((ic->flags & OPT_DOES_HTML) && s)) {
+ strip_html(msg);
+ }
+
+ if (bee->ui->chat_msg) {
+ bee->ui->chat_msg(bee, c, bu, msg, sent_at);
+ }
+
+ if (temp) {
+ bee_user_free(bee, bu);
+ }
}
-void imcb_chat_log( struct groupchat *c, char *format, ... )
+void imcb_chat_log(struct groupchat *c, char *format, ...)
{
struct im_connection *ic = c->ic;
bee_t *bee = ic->bee;
va_list params;
char *text;
-
- if( !bee->ui->chat_log )
+
+ if (!bee->ui->chat_log) {
return;
-
- va_start( params, format );
- text = g_strdup_vprintf( format, params );
- va_end( params );
-
- bee->ui->chat_log( bee, c, text );
- g_free( text );
+ }
+
+ va_start(params, format);
+ text = g_strdup_vprintf(format, params);
+ va_end(params);
+
+ bee->ui->chat_log(bee, c, text);
+ g_free(text);
}
-void imcb_chat_topic( struct groupchat *c, char *who, char *topic, time_t set_at )
+void imcb_chat_topic(struct groupchat *c, char *who, char *topic, time_t set_at)
{
struct im_connection *ic = c->ic;
bee_t *bee = ic->bee;
bee_user_t *bu;
-
- if( !bee->ui->chat_topic )
+
+ if (!bee->ui->chat_topic) {
return;
-
- if( who == NULL)
+ }
+
+ if (who == NULL) {
bu = NULL;
- else if( handle_is_self( ic, who ) )
+ } else if (handle_is_self(ic, who)) {
bu = bee->user;
- else
- bu = bee_user_by_handle( bee, ic, who );
-
- if( ( g_strcasecmp( set_getstr( &ic->bee->set, "strip_html" ), "always" ) == 0 ) ||
- ( ( ic->flags & OPT_DOES_HTML ) && set_getbool( &ic->bee->set, "strip_html" ) ) )
- strip_html( topic );
-
- bee->ui->chat_topic( bee, c, topic, bu );
+ } else {
+ bu = bee_user_by_handle(bee, ic, who);
+ }
+
+ if ((g_strcasecmp(set_getstr(&ic->bee->set, "strip_html"), "always") == 0) ||
+ ((ic->flags & OPT_DOES_HTML) && set_getbool(&ic->bee->set, "strip_html"))) {
+ strip_html(topic);
+ }
+
+ bee->ui->chat_topic(bee, c, topic, bu);
}
-void imcb_chat_add_buddy( struct groupchat *c, const char *handle )
+void imcb_chat_add_buddy(struct groupchat *c, const char *handle)
{
struct im_connection *ic = c->ic;
bee_t *bee = ic->bee;
- bee_user_t *bu = bee_user_by_handle( bee, ic, handle );
+ bee_user_t *bu = bee_user_by_handle(bee, ic, handle);
gboolean me;
-
- if( set_getbool( &c->ic->bee->set, "debug" ) )
- imcb_log( c->ic, "User %s added to conversation %p", handle, c );
-
- me = handle_is_self( ic, handle );
-
+
+ if (set_getbool(&c->ic->bee->set, "debug")) {
+ imcb_log(c->ic, "User %s added to conversation %p", handle, c);
+ }
+
+ me = handle_is_self(ic, handle);
+
/* Most protocols allow people to join, even when they're not in
your contact list. Try to handle that here */
- if( !me && !bu )
- bu = bee_user_new( bee, ic, handle, BEE_USER_LOCAL );
-
+ if (!me && !bu) {
+ bu = bee_user_new(bee, ic, handle, BEE_USER_LOCAL);
+ }
+
/* Add the handle to the room userlist */
/* TODO: Use bu instead of a string */
- c->in_room = g_list_append( c->in_room, g_strdup( handle ) );
-
- if( bee->ui->chat_add_user )
- bee->ui->chat_add_user( bee, c, me ? bee->user : bu );
-
- if( me )
+ c->in_room = g_list_append(c->in_room, g_strdup(handle));
+
+ if (bee->ui->chat_add_user) {
+ bee->ui->chat_add_user(bee, c, me ? bee->user : bu);
+ }
+
+ if (me) {
c->joined = 1;
+ }
}
-void imcb_chat_remove_buddy( struct groupchat *c, const char *handle, const char *reason )
+void imcb_chat_remove_buddy(struct groupchat *c, const char *handle, const char *reason)
{
struct im_connection *ic = c->ic;
bee_t *bee = ic->bee;
bee_user_t *bu = NULL;
-
- if( set_getbool( &bee->set, "debug" ) )
- imcb_log( ic, "User %s removed from conversation %p (%s)", handle, c, reason ? reason : "" );
-
+
+ if (set_getbool(&bee->set, "debug")) {
+ imcb_log(ic, "User %s removed from conversation %p (%s)", handle, c, reason ? reason : "");
+ }
+
/* It might be yourself! */
- if( handle_is_self( ic, handle ) )
- {
- if( c->joined == 0 )
+ if (handle_is_self(ic, handle)) {
+ if (c->joined == 0) {
return;
-
+ }
+
bu = bee->user;
c->joined = 0;
+ } else {
+ bu = bee_user_by_handle(bee, ic, handle);
}
- else
- {
- bu = bee_user_by_handle( bee, ic, handle );
+
+ if (bee->ui->chat_remove_user && bu) {
+ bee->ui->chat_remove_user(bee, c, bu);
}
-
- if( bee->ui->chat_remove_user && bu )
- bee->ui->chat_remove_user( bee, c, bu );
}
-int bee_chat_msg( bee_t *bee, struct groupchat *c, const char *msg, int flags )
+int bee_chat_msg(bee_t *bee, struct groupchat *c, const char *msg, int flags)
{
struct im_connection *ic = c->ic;
char *buf = NULL;
-
- if( ( ic->flags & OPT_DOES_HTML ) && ( g_strncasecmp( msg, "<html>", 6 ) != 0 ) )
- {
- buf = escape_html( msg );
+
+ if ((ic->flags & OPT_DOES_HTML) && (g_strncasecmp(msg, "<html>", 6) != 0)) {
+ buf = escape_html(msg);
msg = buf;
+ } else {
+ buf = g_strdup(msg);
}
- else
- buf = g_strdup( msg );
-
- ic->acc->prpl->chat_msg( c, buf, flags );
- g_free( buf );
-
+
+ ic->acc->prpl->chat_msg(c, buf, flags);
+ g_free(buf);
+
return 1;
}
-struct groupchat *bee_chat_by_title( bee_t *bee, struct im_connection *ic, const char *title )
+struct groupchat *bee_chat_by_title(bee_t *bee, struct im_connection *ic, const char *title)
{
struct groupchat *c;
GSList *l;
-
- for( l = ic->groupchats; l; l = l->next )
- {
+
+ for (l = ic->groupchats; l; l = l->next) {
c = l->data;
- if( strcmp( c->title, title ) == 0 )
+ if (strcmp(c->title, title) == 0) {
return c;
+ }
}
-
+
return NULL;
}
-void imcb_chat_invite( struct im_connection *ic, const char *name, const char *who, const char *msg )
+void imcb_chat_invite(struct im_connection *ic, const char *name, const char *who, const char *msg)
{
- bee_user_t *bu = bee_user_by_handle( ic->bee, ic, who );
-
- if( bu && ic->bee->ui->chat_invite )
- ic->bee->ui->chat_invite( ic->bee, bu, name, msg );
+ bee_user_t *bu = bee_user_by_handle(ic->bee, ic, who);
+
+ if (bu && ic->bee->ui->chat_invite) {
+ ic->bee->ui->chat_invite(ic->bee, bu, name, msg);
+ }
}