pidgin/pidgin

e4144efa975e
Parents 47a8f1e4c414
Children 737f25ddbf02
Clean up a bunch of the cruft I accidentally created
--- a/libpurple/plugins.c Thu Nov 23 22:30:26 2017 -0600
+++ b/libpurple/plugins.c Fri Nov 24 00:00:03 2017 -0600
@@ -1137,7 +1137,11 @@
gplugin_manager_add_default_paths();
- purple_plugins_add_search_path(PURPLE_LIBDIR);
+ if(!g_getenv("PURPLE_PLUGINS_SKIP")) {
+ purple_plugins_add_search_path(PURPLE_LIBDIR);
+ } else {
+ purple_debug_info("plugins", "PURPLE_PLUGINS_SKIP environment variable set, skipping normal plugin paths");
+ }
g_signal_connect(gplugin_manager_get_instance(), "loading-plugin",
G_CALLBACK(plugin_loading_cb), NULL);
--- a/libpurple/tests/test_protocol_xfer.c Thu Nov 23 22:30:26 2017 -0600
+++ b/libpurple/tests/test_protocol_xfer.c Fri Nov 24 00:00:03 2017 -0600
@@ -53,10 +53,10 @@
static gboolean
-test_purple_protocol_xfer_can_receive(PurpleProtocolXferInterface *iface, PurpleConnection *c, const gchar *who) {
- TestPurpleProtocolXfer *xfer = (TestPurpleProtocolXfer *)iface;
+test_purple_protocol_xfer_can_receive(PurpleProtocolXfer *xfer, PurpleConnection *c, const gchar *who) {
+ TestPurpleProtocolXfer *test_xfer = (TestPurpleProtocolXfer *)xfer;
- return xfer->can_send;
+ return test_xfer->can_send;
}
static void
@@ -102,6 +102,8 @@
PurpleConnection *c = g_object_new(PURPLE_TYPE_CONNECTION, "account", a, NULL);
gboolean actual = FALSE;
+ g_assert_true(PURPLE_IS_PROTOCOL_XFER(xfer));
+
xfer->can_send = FALSE;
actual = purple_protocol_xfer_can_receive(
PURPLE_PROTOCOL_XFER(xfer),
--- a/libpurple/tests/test_ui.c Thu Nov 23 22:30:26 2017 -0600
+++ b/libpurple/tests/test_ui.c Fri Nov 24 00:00:03 2017 -0600
@@ -74,6 +74,9 @@
signal(SIGCHLD, SIG_IGN);
#endif
+ /* set the magic PURPLE_PLUGINS_SKIP environment variable */
+ g_setenv("PURPLE_PLUGINS_SKIP", "1", TRUE);
+
/* Set a custom user directory (optional) */
purple_util_set_user_dir(TEST_DATA_DIR);
--- a/libpurple/xfer.c Thu Nov 23 22:30:26 2017 -0600
+++ b/libpurple/xfer.c Fri Nov 24 00:00:03 2017 -0600
@@ -2488,39 +2488,55 @@
}
gboolean
-purple_protocol_xfer_can_receive(PurpleProtocolXferInterface *iface,
+purple_protocol_xfer_can_receive(PurpleProtocolXfer *xfer,
PurpleConnection *connection,
const gchar *who
) {
- g_return_val_if_fail(PURPLE_IS_PROTOCOL_XFER(iface), FALSE);
+ PurpleProtocolXferInterface *iface = NULL;
+
+ g_return_val_if_fail(PURPLE_IS_PROTOCOL_XFER(xfer), FALSE);
g_return_val_if_fail(PURPLE_IS_CONNECTION(connection), FALSE);
g_return_val_if_fail(who, FALSE);
- return iface->can_receive(iface, connection, who);
+ iface = PURPLE_PROTOCOL_XFER_GET_IFACE(xfer);
+ if(iface && iface->can_receive)
+ return iface->can_receive(xfer, connection, who);
+
+ return FALSE;
}
void
-purple_protocol_xfer_send(PurpleProtocolXferInterface *iface,
+purple_protocol_xfer_send(PurpleProtocolXfer *xfer,
PurpleConnection *connection,
const gchar *who,
const gchar *filename
) {
- g_return_if_fail(PURPLE_IS_PROTOCOL_XFER(iface));
+ PurpleProtocolXferInterface *iface = NULL;
+
+ g_return_if_fail(PURPLE_IS_PROTOCOL_XFER(xfer));
g_return_if_fail(PURPLE_IS_CONNECTION(connection));
g_return_if_fail(who);
g_return_if_fail(filename);
- iface->send(iface, connection, who, filename);
+ iface = PURPLE_PROTOCOL_XFER_GET_IFACE(xfer);
+ if(iface && iface->send)
+ iface->send(xfer, connection, who, filename);
}
PurpleXfer *
-purple_protocol_xfer_new_xfer(PurpleProtocolXferInterface *iface,
+purple_protocol_xfer_new_xfer(PurpleProtocolXfer *xfer,
PurpleConnection *connection,
const gchar *who
) {
- g_return_val_if_fail(PURPLE_IS_PROTOCOL_XFER(iface), FALSE);
+ PurpleProtocolXferInterface *iface = NULL;
+
+ g_return_val_if_fail(PURPLE_IS_PROTOCOL_XFER(xfer), FALSE);
g_return_val_if_fail(PURPLE_IS_CONNECTION(connection), FALSE);
g_return_val_if_fail(who, FALSE);
- return iface->new_xfer(iface, connection, who);
+ iface = PURPLE_PROTOCOL_XFER_GET_IFACE(xfer);
+ if(iface && iface->new_xfer)
+ return iface->new_xfer(xfer, connection, who);
+
+ return NULL;
}
--- a/libpurple/xfer.h Thu Nov 23 22:30:26 2017 -0600
+++ b/libpurple/xfer.h Fri Nov 24 00:00:03 2017 -0600
@@ -39,7 +39,7 @@
#define PURPLE_TYPE_XFER_UI_OPS (purple_xfer_ui_ops_get_type())
#define PURPLE_TYPE_PROTOCOL_XFER (purple_protocol_xfer_get_type())
-#define PURPLE_PROTOCOL_XFER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PURPLE_TYPE_PROTOCOL_XFER, PurpleProtocolXferInterface))
+#define PURPLE_PROTOCOL_XFER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PURPLE_TYPE_PROTOCOL_XFER, PurpleProtocolXfer))
#define PURPLE_IS_PROTOCOL_XFER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), PURPLE_TYPE_PROTOCOL_XFER))
#define PURPLE_PROTOCOL_XFER_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE((obj), PURPLE_TYPE_PROTOCOL_XFER, PurpleProtocolXferInterface))
@@ -51,6 +51,7 @@
typedef struct _PurpleXferUiOps PurpleXferUiOps;
+typedef struct _PurpleProtocolXfer PurpleProtocolXfer;
typedef struct _PurpleProtocolXferInterface PurpleProtocolXferInterface;
#include <glib.h>
@@ -203,11 +204,11 @@
GTypeInterface parent_iface;
/*< public >*/
- gboolean (*can_receive)(PurpleProtocolXferInterface *iface, PurpleConnection *c, const gchar *who);
+ gboolean (*can_receive)(PurpleProtocolXfer *xfer, PurpleConnection *c, const gchar *who);
- void (*send)(PurpleProtocolXferInterface *iface, PurpleConnection *c, const gchar *who, const gchar *filename);
+ void (*send)(PurpleProtocolXfer *xfer, PurpleConnection *c, const gchar *who, const gchar *filename);
- PurpleXfer *(*new_xfer)(PurpleProtocolXferInterface *iface, PurpleConnection *c, const gchar *who);
+ PurpleXfer *(*new_xfer)(PurpleProtocolXfer *xfer, PurpleConnection *c, const gchar *who);
};
G_BEGIN_DECLS
@@ -987,7 +988,7 @@
/**
* purple_protocol_xfer_can_receive:
- * @iface: The #PurpleProtocolXferIface instance
+ * @xface: The #PurpleProtocolXfer implementer instance
* @connection: The #PurpleConnection that we're checking
* @who: The user that we want to set a file transfer to.
*
@@ -995,22 +996,22 @@
*
* Returns: TRUE on success, FALSE otherwise.
*/
-gboolean purple_protocol_xfer_can_receive(PurpleProtocolXferInterface *iface, PurpleConnection *connection, const gchar *who);
+gboolean purple_protocol_xfer_can_receive(PurpleProtocolXfer *xfer, PurpleConnection *connection, const gchar *who);
/**
* purple_protocol_xfer_send:
- * @iface: The #PurpleProtocolXferInterface instance
+ * @xfer: The #PurpleProtocolXfer inmplementer instance
* @connection: The #PurpleConnection that we're checking
* @who: The user that we want to set a file transfer to.
* @filename: The name of the file to send.
*
* Sends @filename to @who.
*/
-void purple_protocol_xfer_send(PurpleProtocolXferInterface *iface, PurpleConnection *connection, const gchar *who, const gchar *filename);
+void purple_protocol_xfer_send(PurpleProtocolXfer *xfer, PurpleConnection *connection, const gchar *who, const gchar *filename);
/**
* purple_protocol_xfer_send:
- * @iface: The #PurpleProtocolXferInterface instance
+ * @xfer: The #PurpleProtocolXfer implementer instance
* @connection: The #PurpleConnection that we're checking
* @who: The user that we want to set a file transfer to.
*
@@ -1018,7 +1019,7 @@
*
* Returns: A new #PurpleXfer instance.
*/
-PurpleXfer *purple_protocol_xfer_new_xfer(PurpleProtocolXferInterface *iface, PurpleConnection *connection, const gchar *who);
+PurpleXfer *purple_protocol_xfer_new_xfer(PurpleProtocolXfer *xfer, PurpleConnection *connection, const gchar *who);
G_END_DECLS