Mercurial > pidgin
comparison libpurple/core.c @ 25573:1bfc20b76bb2
Alternate, API-safe fix for #8774 (crash on exit)
author | Ethan Blanton <elb@pidgin.im> |
---|---|
date | Wed, 29 Apr 2009 00:41:37 +0000 |
parents | d5cf115b7c58 |
children | 01f1929d0936 |
comparison
equal
deleted
inserted
replaced
25572:d5cf115b7c58 | 25573:1bfc20b76bb2 |
---|---|
204 * and the PurpleCertificateSchemes will be unregistered when the | 204 * and the PurpleCertificateSchemes will be unregistered when the |
205 * SSL plugin is uninit. | 205 * SSL plugin is uninit. |
206 */ | 206 */ |
207 purple_certificate_uninit(); | 207 purple_certificate_uninit(); |
208 | 208 |
209 /* The SSL plugins must be uninit before they're unloaded */ | |
210 purple_ssl_uninit(); | |
211 | |
212 /* Unload all plugins before the UI because UI plugins might call | |
213 * UI-specific functions */ | |
214 purple_debug_info("main", "Unloading all plugins\n"); | |
215 purple_plugins_destroy_all(); | |
216 | |
217 /* Shut down the UI before all the subsystems */ | |
218 ops = purple_core_get_ui_ops(); | |
219 if (ops != NULL && ops->quit != NULL) | |
220 ops->quit(); | |
221 | |
222 /* Save .xml files, remove signals, etc. */ | 209 /* Save .xml files, remove signals, etc. */ |
223 purple_smileys_uninit(); | 210 purple_smileys_uninit(); |
224 purple_idle_uninit(); | 211 purple_idle_uninit(); |
225 purple_pounces_uninit(); | 212 purple_pounces_uninit(); |
226 purple_blist_uninit(); | 213 purple_blist_uninit(); |
237 purple_proxy_uninit(); | 224 purple_proxy_uninit(); |
238 purple_dnsquery_uninit(); | 225 purple_dnsquery_uninit(); |
239 purple_imgstore_uninit(); | 226 purple_imgstore_uninit(); |
240 purple_network_uninit(); | 227 purple_network_uninit(); |
241 | 228 |
229 /* The SSL plugins must be uninit before they're unloaded */ | |
230 purple_ssl_uninit(); | |
231 | |
232 purple_debug_info("main", "Unloading all plugins\n"); | |
233 purple_plugins_destroy_all(); | |
234 | |
235 ops = purple_core_get_ui_ops(); | |
236 if (ops != NULL && ops->quit != NULL) | |
237 ops->quit(); | |
238 | |
242 /* Everything after this must not try to read any prefs */ | 239 /* Everything after this must not try to read any prefs */ |
243 purple_prefs_uninit(); | 240 purple_prefs_uninit(); |
244 purple_plugins_uninit(); | 241 purple_plugins_uninit(); |
245 #ifdef HAVE_DBUS | 242 #ifdef HAVE_DBUS |
246 purple_dbus_uninit(); | 243 purple_dbus_uninit(); |