libpurple/plugins/signals-test.c

changeset 29189
141cdbeab2a5
parent 28981
4e3922ab4844
child 30708
535bec1e66fb
equal deleted inserted replaced
29188:99411c63a3ba 29189:141cdbeab2a5
543 **************************************************************************/ 543 **************************************************************************/
544 static void 544 static void
545 quitting_cb(void *data) 545 quitting_cb(void *data)
546 { 546 {
547 purple_debug_misc("signals test", "quitting ()\n"); 547 purple_debug_misc("signals test", "quitting ()\n");
548 }
549
550 static void
551 printhash(gpointer key, gpointer value, gpointer data)
552 {
553 char *a = (char *)key;
554 char *b = (char *)value;
555 GString *str = (GString *)data;
556 g_string_append_printf(str, " [%s] = [%s]\n", a, b ? b : "(null)");
557 }
558
559 static gboolean
560 uri_handler(const char *proto, const char *cmd, GHashTable *params)
561 {
562 GString *str = g_string_new("\n{\n");
563 g_hash_table_foreach(params, printhash, str);
564 g_string_append_c(str, '}');
565 purple_debug_misc("signals test", "uri handler (%s, %s, %s)\n", proto, cmd, str->str);
566 g_string_free(str, TRUE);
567 return FALSE;
548 } 568 }
549 569
550 /************************************************************************** 570 /**************************************************************************
551 * File transfer signal callbacks 571 * File transfer signal callbacks
552 **************************************************************************/ 572 **************************************************************************/
818 plugin, PURPLE_CALLBACK(cipher_removed_cb), NULL); 838 plugin, PURPLE_CALLBACK(cipher_removed_cb), NULL);
819 839
820 /* Core signals */ 840 /* Core signals */
821 purple_signal_connect(core_handle, "quitting", 841 purple_signal_connect(core_handle, "quitting",
822 plugin, PURPLE_CALLBACK(quitting_cb), NULL); 842 plugin, PURPLE_CALLBACK(quitting_cb), NULL);
843 purple_signal_connect(core_handle, "uri-handler",
844 plugin, PURPLE_CALLBACK(uri_handler), NULL);
823 845
824 /* File transfer signals */ 846 /* File transfer signals */
825 purple_signal_connect(ft_handle, "file-recv-accept", 847 purple_signal_connect(ft_handle, "file-recv-accept",
826 plugin, PURPLE_CALLBACK(ft_recv_accept_cb), NULL); 848 plugin, PURPLE_CALLBACK(ft_recv_accept_cb), NULL);
827 purple_signal_connect(ft_handle, "file-recv-start", 849 purple_signal_connect(ft_handle, "file-recv-start",

mercurial