libpurple/protocols/null/nullprpl.c

branch
soc.2013.gobjectification
changeset 34991
63c14353a0f4
parent 34979
14c09cce55e1
child 35005
bff56dfca65d
equal deleted inserted replaced
34990:6e2b46ef6743 34991:63c14353a0f4
976 976
977 foreach_gc_in_chat(set_chat_topic_fn, gc, id, (gpointer)topic); 977 foreach_gc_in_chat(set_chat_topic_fn, gc, id, (gpointer)topic);
978 } 978 }
979 979
980 static gboolean nullprpl_finish_get_roomlist(gpointer roomlist) { 980 static gboolean nullprpl_finish_get_roomlist(gpointer roomlist) {
981 purple_roomlist_set_in_progress((PurpleRoomlist *)roomlist, FALSE); 981 purple_roomlist_set_in_progress(PURPLE_ROOMLIST(roomlist), FALSE);
982 g_object_unref(roomlist);
983
982 return FALSE; 984 return FALSE;
983 } 985 }
984 986
985 static PurpleRoomlist *nullprpl_roomlist_get_list(PurpleConnection *gc) { 987 static PurpleRoomlist *nullprpl_roomlist_get_list(PurpleConnection *gc) {
986 const char *username = purple_account_get_username(purple_connection_get_account(gc)); 988 const char *username = purple_account_get_username(purple_connection_get_account(gc));
1025 purple_roomlist_room_add_field(roomlist, room, &id); 1027 purple_roomlist_room_add_field(roomlist, room, &id);
1026 purple_roomlist_room_add(roomlist, room); 1028 purple_roomlist_room_add(roomlist, room);
1027 } 1029 }
1028 1030
1029 g_list_free(seen_ids); 1031 g_list_free(seen_ids);
1030 purple_timeout_add(1 /* ms */, nullprpl_finish_get_roomlist, roomlist); 1032 purple_timeout_add(1 /* ms */, nullprpl_finish_get_roomlist, g_object_ref(roomlist));
1031 return roomlist; 1033 return roomlist;
1032 } 1034 }
1033 1035
1034 static void nullprpl_roomlist_cancel(PurpleRoomlist *list) { 1036 static void nullprpl_roomlist_cancel(PurpleRoomlist *list) {
1035 PurpleAccount *account = purple_roomlist_get_account(list); 1037 PurpleAccount *account = purple_roomlist_get_account(list);

mercurial