libpurple/debug.c

changeset 40950
c3fc77a3c015
parent 40828
4ee19005534e
child 41082
d19ef491d1aa
equal deleted inserted replaced
40949:1472618b493d 40950:c3fc77a3c015
230 PurpleDebugUi * 230 PurpleDebugUi *
231 purple_debug_get_ui(void) { 231 purple_debug_get_ui(void) {
232 return debug_ui; 232 return debug_ui;
233 } 233 }
234 234
235 gboolean
236 purple_debug_ui_is_enabled(PurpleDebugUi *ui, PurpleDebugLevel level,
237 const gchar *category)
238 {
239 PurpleDebugUiInterface *iface = NULL;
240
241 g_return_val_if_fail(PURPLE_IS_DEBUG_UI(ui), FALSE);
242
243 iface = PURPLE_DEBUG_UI_GET_IFACE(ui);
244 if(iface != NULL && iface->is_enabled != NULL) {
245 return iface->is_enabled(ui, level, category);
246 }
247
248 return FALSE;
249 }
250
251 void
252 purple_debug_ui_print(PurpleDebugUi *ui, PurpleDebugLevel level,
253 const gchar *category, const gchar *arg_s)
254 {
255 PurpleDebugUiInterface *iface = NULL;
256
257 g_return_if_fail(PURPLE_IS_DEBUG_UI(ui));
258
259 if(!purple_debug_ui_is_enabled(ui, level, category)) {
260 return;
261 }
262
263 iface = PURPLE_DEBUG_UI_GET_IFACE(ui);
264 if(iface != NULL && iface->print != NULL) {
265 iface->print(ui, level, category, arg_s);
266 }
267 }
268
269 G_DEFINE_INTERFACE(PurpleDebugUi, purple_debug_ui, G_TYPE_OBJECT);
270
271 static void
272 purple_debug_ui_default_init(PurpleDebugUiInterface *iface) {
273 }
274
275 void 235 void
276 purple_debug_init(void) { 236 purple_debug_init(void) {
277 /* Read environment variables once per init */ 237 /* Read environment variables once per init */
278 if(g_getenv("PURPLE_UNSAFE_DEBUG")) { 238 if(g_getenv("PURPLE_UNSAFE_DEBUG")) {
279 purple_debug_set_unsafe(TRUE); 239 purple_debug_set_unsafe(TRUE);

mercurial