Wed, 30 Aug 2017 20:33:01 -0300
facebook: Fix "Failed to read thrift" with unknown fields in /t_p payload
>Login error: Failed to read thrift: facebook-api.c:1815
>fb_api_cb_publish_pt: assertion 'FALSE' failed
|
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 | 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 | 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 | 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 | 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 | 100 | if (!purple_proxy) |
| 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 |