libpurple/plugins/simple.c

Sat, 27 Aug 2016 18:16:01 -0500

author
Mike Ruprecht <cmaiku@gmail.com>
date
Sat, 27 Aug 2016 18:16:01 -0500
changeset 37959
e76677ed819c
parent 36742
5d43951cabc0
child 39959
e47fcffd061b
permissions
-rw-r--r--

connection: Add purple_connection_take_error()

This patch adds a purple_connection_take_error() function, which
is functionally equivalent to purple_connection_g_error(), except
that it takes ownership of the passed GError.

This is useful to simplify error handling so that the GError doesn't
have to be freed, or, in the future potentially copied, if it's no
longer needed where it's generated. It can also allow for GErrors
being generated without storing them in a variable. This would be
reasonably common if/when all PurpleConnection errors are passed
in via GError.

6677
effa9861ec8e [gaim-migrate @ 7202]
Paul Aurich <darkrain42@pidgin.im>
parents: 6371
diff changeset
1 #include "internal.h"
effa9861ec8e [gaim-migrate @ 7202]
Paul Aurich <darkrain42@pidgin.im>
parents: 6371
diff changeset
2 #include "debug.h"
36367
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 20288
diff changeset
3 #include "plugins.h"
9954
52a14a58a33e [gaim-migrate @ 10851]
Nathan Walp <nwalp@pidgin.im>
parents: 8993
diff changeset
4 #include "version.h"
90
6a145e05be78 [gaim-migrate @ 100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
5
13690
bcb427c64568 [gaim-migrate @ 16091]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
6 /** Plugin id : type-author-name (to guarantee uniqueness) */
bcb427c64568 [gaim-migrate @ 16091]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
7 #define SIMPLE_PLUGIN_ID "core-ewarmenhoven-simple"
bcb427c64568 [gaim-migrate @ 16091]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
8
36742
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
9 static PurplePluginInfo *
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
10 plugin_query(GError **error)
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
11 {
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
12 const gchar * const authors[] = {
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
13 "Eric Warmenhoven <eric@warmenhoven.org>",
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
14 NULL
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
15 };
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
16
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
17 return purple_plugin_info_new(
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
18 "id", SIMPLE_PLUGIN_ID,
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
19 "name", N_("Simple Plugin"),
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
20 "version", DISPLAY_VERSION,
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
21 "category", N_("Testing"),
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
22 "summary", N_("Tests to see that most things are working."),
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
23 "description", N_("Tests to see that most things are working."),
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
24 "authors", authors,
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
25 "website", PURPLE_WEBSITE,
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
26 "abi-version", PURPLE_ABI_VERSION,
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
27 NULL
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
28 );
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
29 }
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
30
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 3565
diff changeset
31 static gboolean
36742
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
32 plugin_load(PurplePlugin *plugin, GError **error)
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 3565
diff changeset
33 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
34 purple_debug(PURPLE_DEBUG_INFO, "simple", "simple plugin loaded.\n");
94
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 92
diff changeset
35
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 3565
diff changeset
36 return TRUE;
90
6a145e05be78 [gaim-migrate @ 100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
37 }
6a145e05be78 [gaim-migrate @ 100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
38
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 3565
diff changeset
39 static gboolean
36742
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
40 plugin_unload(PurplePlugin *plugin, GError **error)
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 3565
diff changeset
41 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
42 purple_debug(PURPLE_DEBUG_INFO, "simple", "simple plugin unloaded.\n");
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 3565
diff changeset
43
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 3565
diff changeset
44 return TRUE;
90
6a145e05be78 [gaim-migrate @ 100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
45 }
92
b2cc29da946e [gaim-migrate @ 102]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 90
diff changeset
46
36742
5d43951cabc0 More refactoring
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
47 PURPLE_PLUGIN_INIT(simple, plugin_query, plugin_load, plugin_unload);

mercurial