示例#1
0
static void sig_channel_destroyed(CHANNEL_REC *channel)
{
	void *data = MODULE_DATA(channel);

	g_free(data);
	MODULE_DATA_UNSET(channel);
}
示例#2
0
static void sig_channel_destroyed(Channel *channel)
{
	ChannelGui *gui;

	gui = CHANNEL_GUI(channel);
	signal_emit("gui channel destroyed", 1, gui);

	while (gui->titles != NULL) {
		ChannelTitle *title = gui->titles->data;
		gtk_widget_destroy(title->widget);
	}

	gui_nicklist_destroy(gui->nicklist);
	g_free(gui);

	MODULE_DATA_UNSET(channel);
}
示例#3
0
文件: flood.c 项目: Brijen/MacIrssi
/* Deinitialize flood protection */
static void flood_deinit_server(IRC_SERVER_REC *server)
{
	MODULE_SERVER_REC *mserver;

	g_return_if_fail(server != NULL);

	if (!IS_IRC_SERVER(server))
                return;

	mserver = MODULE_DATA(server);
	if (mserver != NULL && mserver->floodlist != NULL) {
		flood_timecheck = 0;

		g_hash_table_foreach(mserver->floodlist,
				     (GHFunc) flood_hash_destroy, NULL);
		g_hash_table_destroy(mserver->floodlist);
	}
	g_free(mserver);
	MODULE_DATA_UNSET(server);
}
示例#4
0
static void notifylist_deinit_server(IRC_SERVER_REC *server)
{
	MODULE_SERVER_REC *mserver;
	NOTIFY_NICK_REC *rec;

	g_return_if_fail(server != NULL);

	if (!IS_IRC_SERVER(server))
		return;

	mserver = MODULE_DATA(server);
	while (mserver->notify_users != NULL) {
		rec = mserver->notify_users->data;

		mserver->notify_users = g_slist_remove(mserver->notify_users, rec);
		notify_nick_destroy(rec);
	}
	g_free(mserver);
	MODULE_DATA_UNSET(server);
}
示例#5
0
static void sig_disconnected(SERVER_REC *server)
{
	void *data = MODULE_DATA(server);
	g_free(data);
	MODULE_DATA_UNSET(server);
}
示例#6
0
static void sig_channel_destroyed(CHANNEL_REC *channel)
{
	g_free(MODULE_DATA(channel));
	MODULE_DATA_UNSET(channel);
}
示例#7
0
static void sig_disconnected(SERVER_REC *server)
{
	g_free(MODULE_DATA(server));
	MODULE_DATA_UNSET(server);
}