| 427 g_free(jb->error_msg); |
427 g_free(jb->error_msg); |
| 428 jb->error_msg = NULL; |
428 jb->error_msg = NULL; |
| 429 } |
429 } |
| 430 |
430 |
| 431 if(type && !strcmp(type, "error")) { |
431 if(type && !strcmp(type, "error")) { |
| 432 char *msg = jabber_parse_error(js, packet); |
432 char *msg = jabber_parse_error(js, packet, NULL); |
| 433 |
433 |
| 434 state = JABBER_BUDDY_STATE_ERROR; |
434 state = JABBER_BUDDY_STATE_ERROR; |
| 435 jb->error_msg = msg ? msg : g_strdup(_("Unknown Error in presence")); |
435 jb->error_msg = msg ? msg : g_strdup(_("Unknown Error in presence")); |
| 436 } else if(type && !strcmp(type, "subscribe")) { |
436 } else if(type && !strcmp(type, "subscribe")) { |
| 437 struct _jabber_add_permit *jap = g_new0(struct _jabber_add_permit, 1); |
437 struct _jabber_add_permit *jap = g_new0(struct _jabber_add_permit, 1); |
| 559 if(jid->node && (chat = jabber_chat_find(js, jid->node, jid->domain))) { |
559 if(jid->node && (chat = jabber_chat_find(js, jid->node, jid->domain))) { |
| 560 static int i = 1; |
560 static int i = 1; |
| 561 char *room_jid = g_strdup_printf("%s@%s", jid->node, jid->domain); |
561 char *room_jid = g_strdup_printf("%s@%s", jid->node, jid->domain); |
| 562 |
562 |
| 563 if(state == JABBER_BUDDY_STATE_ERROR) { |
563 if(state == JABBER_BUDDY_STATE_ERROR) { |
| 564 char *title, *msg = jabber_parse_error(js, packet); |
564 char *title, *msg = jabber_parse_error(js, packet, NULL); |
| 565 |
565 |
| 566 if(chat->conv) { |
566 if(chat->conv) { |
| 567 title = g_strdup_printf(_("Error in chat %s"), from); |
567 title = g_strdup_printf(_("Error in chat %s"), from); |
| 568 if (g_hash_table_size(chat->members) == 0) |
568 if (g_hash_table_size(chat->members) == 0) |
| 569 serv_got_chat_left(js->gc, chat->id); |
569 serv_got_chat_left(js->gc, chat->id); |