Mercurial > pidgin
comparison src/protocols/oscar/oscar.c @ 2869:9b029055cfba
[gaim-migrate @ 2882]
libfaim update (fix MacAIM chat invite crash)
committer: Tailor Script <tailor@pidgin.im>
author | Adam Fritzler <mid@auk.cx> |
---|---|
date | Mon, 10 Dec 2001 06:13:18 +0000 |
parents | 6d62d4520460 |
children | 538c58b43eff |
comparison
equal
deleted
inserted
replaced
2868:93f35e8ddeab | 2869:9b029055cfba |
---|---|
1349 } | 1349 } |
1350 | 1350 |
1351 static int incomingim_chan2(aim_session_t *sess, aim_conn_t *conn, aim_userinfo_t *userinfo, struct aim_incomingim_ch2_args *args) { | 1351 static int incomingim_chan2(aim_session_t *sess, aim_conn_t *conn, aim_userinfo_t *userinfo, struct aim_incomingim_ch2_args *args) { |
1352 struct gaim_connection *gc = sess->aux_data; | 1352 struct gaim_connection *gc = sess->aux_data; |
1353 | 1353 |
1354 debug_printf("rendezvous status %d (%s)\n", args->status, userinfo->sn); | |
1355 | |
1356 if (args->status != AIM_RENDEZVOUS_PROPOSE) | |
1357 return 1; | |
1358 | |
1354 if (args->reqclass & AIM_CAPS_CHAT) { | 1359 if (args->reqclass & AIM_CAPS_CHAT) { |
1355 char *name = extract_name(args->info.chat.roominfo.name); | 1360 char *name = extract_name(args->info.chat.roominfo.name); |
1356 int *exch = g_new0(int, 1); | 1361 int *exch = g_new0(int, 1); |
1357 GList *m = NULL; | 1362 GList *m = NULL; |
1358 m = g_list_append(m, g_strdup(name ? name : args->info.chat.roominfo.name)); | 1363 m = g_list_append(m, g_strdup(name ? name : args->info.chat.roominfo.name)); |
1359 *exch = args->info.chat.roominfo.exchange; | 1364 *exch = args->info.chat.roominfo.exchange; |
1360 m = g_list_append(m, exch); | 1365 m = g_list_append(m, exch); |
1361 serv_got_chat_invite(gc, | 1366 serv_got_chat_invite(gc, |
1362 name ? name : args->info.chat.roominfo.name, | 1367 name ? name : args->info.chat.roominfo.name, |
1363 userinfo->sn, | 1368 userinfo->sn, |
1364 args->info.chat.msg, | 1369 (char *)args->msg, |
1365 m); | 1370 m); |
1366 if (name) | 1371 if (name) |
1367 g_free(name); | 1372 g_free(name); |
1368 } else if (args->reqclass & AIM_CAPS_SENDFILE) { | 1373 } else if (args->reqclass & AIM_CAPS_SENDFILE) { |
1369 } else if (args->reqclass & AIM_CAPS_GETFILE) { | 1374 } else if (args->reqclass & AIM_CAPS_GETFILE) { |
1374 } else if (args->reqclass & AIM_CAPS_IMIMAGE) { | 1379 } else if (args->reqclass & AIM_CAPS_IMIMAGE) { |
1375 struct ask_direct *d = g_new0(struct ask_direct, 1); | 1380 struct ask_direct *d = g_new0(struct ask_direct, 1); |
1376 char buf[256]; | 1381 char buf[256]; |
1377 | 1382 |
1378 debug_printf("%s received direct im request from %s (%s)\n", | 1383 debug_printf("%s received direct im request from %s (%s)\n", |
1379 gc->username, userinfo->sn, args->info.imimage.ip); | 1384 gc->username, userinfo->sn, args->verifiedip); |
1380 | 1385 |
1381 d->gc = gc; | 1386 d->gc = gc; |
1382 d->sn = g_strdup(userinfo->sn); | 1387 d->sn = g_strdup(userinfo->sn); |
1383 strncpy(d->ip, args->info.imimage.ip, sizeof(d->ip)); | 1388 strncpy(d->ip, args->verifiedip, sizeof(d->ip)); |
1384 memcpy(d->cookie, args->cookie, 8); | 1389 memcpy(d->cookie, args->cookie, 8); |
1385 g_snprintf(buf, sizeof buf, "%s has just asked to directly connect to %s.", | 1390 g_snprintf(buf, sizeof buf, "%s has just asked to directly connect to %s.", |
1386 userinfo->sn, gc->username); | 1391 userinfo->sn, gc->username); |
1387 do_ask_dialog(buf, d, accept_direct_im, cancel_direct_im); | 1392 do_ask_dialog(buf, d, accept_direct_im, cancel_direct_im); |
1388 } else { | 1393 } else { |