pidgin/gtkmain.c

changeset 18606
102d3ca556ea
parent 18345
a51a9c1e4314
parent 18442
99c6a0271b1d
child 19048
432404a6b416
equal deleted inserted replaced
18605:76230f659c3f 18606:102d3ca556ea
314 pidgin_roomlist_init(); 314 pidgin_roomlist_init();
315 pidgin_log_init(); 315 pidgin_log_init();
316 pidgin_docklet_init(); 316 pidgin_docklet_init();
317 } 317 }
318 318
319 static GHashTable *ui_info = NULL;
320
319 static void 321 static void
320 pidgin_quit(void) 322 pidgin_quit(void)
321 { 323 {
322 #ifdef USE_SM 324 #ifdef USE_SM
323 /* unplug */ 325 /* unplug */
335 pidgin_connection_uninit(); 337 pidgin_connection_uninit();
336 pidgin_account_uninit(); 338 pidgin_account_uninit();
337 pidgin_xfers_uninit(); 339 pidgin_xfers_uninit();
338 pidgin_debug_uninit(); 340 pidgin_debug_uninit();
339 341
342 if(NULL != ui_info)
343 g_hash_table_destroy(ui_info);
344
340 /* and end it all... */ 345 /* and end it all... */
341 gtk_main_quit(); 346 gtk_main_quit();
347 }
348
349 static GHashTable *pidgin_ui_get_info()
350 {
351 if(NULL == ui_info) {
352 ui_info = g_hash_table_new(g_str_hash, g_str_equal);
353
354 g_hash_table_insert(ui_info, "name", (char*)PIDGIN_NAME);
355 g_hash_table_insert(ui_info, "version", VERSION);
356 }
357
358 return ui_info;
342 } 359 }
343 360
344 static PurpleCoreUiOps core_ops = 361 static PurpleCoreUiOps core_ops =
345 { 362 {
346 pidgin_prefs_init, 363 pidgin_prefs_init,
347 debug_init, 364 debug_init,
348 pidgin_ui_init, 365 pidgin_ui_init,
349 pidgin_quit, 366 pidgin_quit,
350 NULL, 367 pidgin_ui_get_info,
351 NULL, 368 NULL,
352 NULL, 369 NULL,
353 NULL 370 NULL
354 }; 371 };
355 372

mercurial