libpurple/purple-client.c

Mon, 27 Nov 2017 20:55:41 -0600

author
Gary Kramlich <grim@reaperworld.com>
date
Mon, 27 Nov 2017 20:55:41 -0600
changeset 38791
cf55bdaccfb0
parent 38478
56a564220b5a
permissions
-rw-r--r--

Remove all of the #if 0'd blocks. All were 10 years old and don't seem necessary

38057
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
1 /*
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
2 * purple
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
3 *
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
4 * Purple is the legal property of its developers, whose names are too numerous
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
5 * to list here. Please refer to the COPYRIGHT file distributed with this
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
6 * source distribution.
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
7 *
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
8 * This program is free software; you can redistribute it and/or modify
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
9 * it under the terms of the GNU General Public License as published by
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
10 * the Free Software Foundation; either version 2 of the License, or
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
11 * (at your option) any later version.
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
12 *
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
13 * This program is distributed in the hope that it will be useful,
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
16 * GNU General Public License for more details.
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
17 *
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
18 * You should have received a copy of the GNU General Public License
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
19 * along with this program; if not, write to the Free Software
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
21 *
41f47eb1aa19 Add our license spiel to a bunch of files
Gary Kramlich <grim@reaperworld.com>
parents: 38045
diff changeset
22 */
22582
838faa931042 Avoid a compile warning when building with NetworkManager support because
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 17468
diff changeset
23 #ifndef DBUS_API_SUBJECT_TO_CHANGE
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
24 #define DBUS_API_SUBJECT_TO_CHANGE
22582
838faa931042 Avoid a compile warning when building with NetworkManager support because
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 17468
diff changeset
25 #endif
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
26
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
27 #include <dbus/dbus-glib.h>
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
28 #include <stdio.h>
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
29 #include <stdlib.h>
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
30
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
31 #include "dbus-purple.h"
17468
4ce91d523015 Yet another change from o_sukhodolsky:
Richard Laager <rlaager@pidgin.im>
parents: 15987
diff changeset
32 #include "purple-client.h"
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
33
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
34 static DBusGConnection *bus;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
35 static DBusGProxy *purple_proxy;
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
36
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
37 static GList *garray_int_to_glist(GArray *array)
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
38 {
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
39 GList *list = NULL;
34304
faf0414a8b51 Fix most of libpurple warnings about -Wsign-compare
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33890
diff changeset
40 gsize i;
11277
ab3c0b6c5ca5 [gaim-migrate @ 13467]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents: 11241
diff changeset
41
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
42 for (i = 0; i < array->len; i++)
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
43 list = g_list_append(list, GINT_TO_POINTER(g_array_index(array,gint,i)));
11277
ab3c0b6c5ca5 [gaim-migrate @ 13467]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents: 11241
diff changeset
44
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
45 g_array_free(array, TRUE);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
46 return list;
11277
ab3c0b6c5ca5 [gaim-migrate @ 13467]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents: 11241
diff changeset
47 }
ab3c0b6c5ca5 [gaim-migrate @ 13467]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents: 11241
diff changeset
48
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
49 static GSList *garray_int_to_gslist(GArray *array)
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
50 {
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
51 GSList *list = NULL;
34304
faf0414a8b51 Fix most of libpurple warnings about -Wsign-compare
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33890
diff changeset
52 gsize i;
11277
ab3c0b6c5ca5 [gaim-migrate @ 13467]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents: 11241
diff changeset
53
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
54 for (i = 0; i < array->len; i++)
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
55 list = g_slist_append(list, GINT_TO_POINTER(g_array_index(array,gint,i)));
11277
ab3c0b6c5ca5 [gaim-migrate @ 13467]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents: 11241
diff changeset
56
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
57 g_array_free(array, TRUE);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
58 return list;
11277
ab3c0b6c5ca5 [gaim-migrate @ 13467]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents: 11241
diff changeset
59 }
ab3c0b6c5ca5 [gaim-migrate @ 13467]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents: 11241
diff changeset
60
38476
346f071df156 Fix dependencies of purple-client.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 35499
diff changeset
61 #include "purple-client-bindings.ch"
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
62
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
63 static void lose(const char *fmt, ...) G_GNUC_NORETURN G_GNUC_PRINTF (1, 2);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
64 static void lose_gerror(const char *prefix, GError *error) G_GNUC_NORETURN;
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
65
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
66 static void
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
67 lose(const char *str, ...)
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
68 {
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
69 va_list args;
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
70
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
71 va_start(args, str);
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
72
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
73 vfprintf(stderr, str, args);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
74 fputc('\n', stderr);
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
75
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
76 va_end(args);
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
77
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
78 exit(1);
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
79 }
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
80
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
81 static void
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
82 lose_gerror(const char *prefix, GError *error)
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
83 {
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
84 lose("%s: %s", prefix, error->message);
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
85 }
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
86
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
87 void purple_init(void)
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
88 {
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
89 GError *error = NULL;
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
90
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
91 bus = dbus_g_bus_get (DBUS_BUS_SESSION, &error);
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
92 if (!bus)
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 11277
diff changeset
93 lose_gerror ("Couldn't connect to session bus", error);
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
94
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
95 purple_proxy = dbus_g_proxy_new_for_name (bus,
35499
c4c5e0a670b1 Fix namespaces issues in libpurple.
Ankit Vani <a@nevitus.org>
parents: 34304
diff changeset
96 PURPLE_DBUS_SERVICE,
c4c5e0a670b1 Fix namespaces issues in libpurple.
Ankit Vani <a@nevitus.org>
parents: 34304
diff changeset
97 PURPLE_DBUS_PATH,
c4c5e0a670b1 Fix namespaces issues in libpurple.
Ankit Vani <a@nevitus.org>
parents: 34304
diff changeset
98 PURPLE_DBUS_INTERFACE);
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
99
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
100 if (!purple_proxy)
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
101 lose_gerror ("Couldn't connect to the Purple Service", error);
11241
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
102 }
f62a71823fc3 [gaim-migrate @ 13404]
Piotr Zielinski <zielaj@users.sourceforge.net>
parents:
diff changeset
103

mercurial