diff options
author | Wilmer van der Gaast <wilmer@hypnofrog.dub.corp.google.com> | 2007-06-04 12:45:33 +0100 |
---|---|---|
committer | Wilmer van der Gaast <wilmer@hypnofrog.dub.corp.google.com> | 2007-06-04 12:45:33 +0100 |
commit | 54f2f55f983f4b6bb8a58772bbd1137580e3307f (patch) | |
tree | 0f471a8b89c2c5a8cdc5dfced871e039e32cb271 /protocols/jabber/conference.c | |
parent | bb95d43e263530805224005ca246addb6bb199fa (diff) |
Now anonymous rooms should really work. This makes sure the self-join will
actually be recognized properly. This is running on my work machine for
a few days already.
Diffstat (limited to 'protocols/jabber/conference.c')
-rw-r--r-- | protocols/jabber/conference.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/protocols/jabber/conference.c b/protocols/jabber/conference.c index dde2b8b5..a97590ba 100644 --- a/protocols/jabber/conference.c +++ b/protocols/jabber/conference.c @@ -144,10 +144,14 @@ void jabber_chat_pkt_presence( struct im_connection *ic, struct jabber_buddy *bu /* Make up some other handle, if necessary. */ if( bud->ext_jid == NULL ) { - /* Don't want the nick to be at the end, so let's - think of some slightly different notation to use - for anonymous groupchat participants in BitlBee. */ - bud->ext_jid = g_strdup_printf( "%s=%s", bud->resource, bud->bare_jid ); + if( bud == jc->me ) + bud->ext_jid = g_strdup( ic->acc->user ); + else + /* Don't want the nick to be at the end, so let's + think of some slightly different notation to use + for anonymous groupchat participants in BitlBee. */ + bud->ext_jid = g_strdup_printf( "%s=%s", bud->resource, bud->bare_jid ); + bud->flags |= JBFLAG_IS_ANONYMOUS; } |