Merged in rw_grim/pidgin (pull request #123)

Wed, 14 Sep 2016 14:53:12 -0500

author
Gary Kramlich <grim@reaperworld.com>
date
Wed, 14 Sep 2016 14:53:12 -0500
changeset 38041
5a63c26f21fd
parent 38029
9479ee6b22e2 (diff)
parent 38040
8f2b9a832dec (current diff)
child 38042
b11347d83ec0
child 38043
3549ff786eab
child 38069
56d191003b34
child 38152
4d812213b260

Merged in rw_grim/pidgin (pull request #123)

bitbucket pipelines support

--- a/doc/funniest_home_convos.txt	Fri Sep 09 12:43:59 2016 -0500
+++ b/doc/funniest_home_convos.txt	Wed Sep 14 14:53:12 2016 -0500
@@ -622,3 +622,11 @@
 (02:48:27 AM) user left the room.
 (02:49:04 AM) darkrain42: Wow. (again)
 
+--
+
+(13:34:15) elb: I think when 3.0 gets closer we should have a long string freeze and beg for active translations
+(13:34:57) maiku: Probably not unwise as much a such terms make me cringe :-D
+(13:35:09) dx: bonus points for not forgetting that there's a string freeze during the string freeze
+(13:35:18) *** dx sets low standards
+(13:35:33) maiku: Well now you're just taking the fun out of it :-D
+(13:36:06) dx: i don't think string freezes are supposed to be fun
--- a/doc/reference/libpurple/Makefile.am	Fri Sep 09 12:43:59 2016 -0500
+++ b/doc/reference/libpurple/Makefile.am	Wed Sep 14 14:53:12 2016 -0500
@@ -69,6 +69,7 @@
 	plugins \
 	protocols \
 	tests \
+	tests.h \
 	win32 \
 	backend-fs2.h \
 	dbus-define-api.h \
--- a/finch/gntmedia.c	Fri Sep 09 12:43:59 2016 -0500
+++ b/finch/gntmedia.c	Wed Sep 14 14:53:12 2016 -0500
@@ -414,13 +414,14 @@
 {
 #ifdef USE_VV
 	PurpleMediaManager *manager = purple_media_manager_get();
-	PurpleMediaElementInfo *audio_src;
-	PurpleMediaElementInfo *audio_sink;
+	PurpleMediaElementInfo *audio_src = NULL;
+	PurpleMediaElementInfo *audio_sink = NULL;
 	const char *pref;
 
 	pref = purple_prefs_get_string(
 			FINCH_PREFS_ROOT "/vvconfig/audio/src/device");
-	audio_src = purple_media_manager_get_element_info(manager, pref);
+	if (pref)
+		audio_src = purple_media_manager_get_element_info(manager, pref);
 	if (!audio_src) {
 		pref = "autoaudiosrc";
 		purple_prefs_set_string(
@@ -431,7 +432,8 @@
 
 	pref = purple_prefs_get_string(
 			FINCH_PREFS_ROOT "/vvconfig/audio/sink/device");
-	audio_sink = purple_media_manager_get_element_info(manager, pref);
+	if (pref)
+		audio_sink = purple_media_manager_get_element_info(manager, pref);
 	if (!audio_sink) {
 		pref = "autoaudiosink";
 		purple_prefs_set_string(
--- a/libpurple/blistnode.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/blistnode.h	Wed Sep 14 14:53:12 2016 -0500
@@ -66,11 +66,6 @@
 	gpointer ui_data;
 };
 
-/**
- * PurpleBlistNodeClass:
- *
- * The base class for all #PurpleBlistNode's.
- */
 struct _PurpleBlistNodeClass {
 	GObjectClass gparent_class;
 
--- a/libpurple/buddy.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/buddy.h	Wed Sep 14 14:53:12 2016 -0500
@@ -70,11 +70,6 @@
 	PurpleBlistNode node;
 };
 
-/**
- * PurpleBuddyClass:
- *
- * The base class for all #PurpleBuddy's.
- */
 struct _PurpleBuddyClass {
 	PurpleBlistNodeClass node_class;
 
--- a/libpurple/buddylist.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/buddylist.h	Wed Sep 14 14:53:12 2016 -0500
@@ -70,11 +70,6 @@
 	gpointer ui_data;
 };
 
-/**
- * PurpleBuddyListClass:
- *
- * The base class for all #PurpleBuddyList's.
- */
 struct _PurpleBuddyListClass {
 	GObjectClass gparent_class;
 
--- a/libpurple/chat.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/chat.h	Wed Sep 14 14:53:12 2016 -0500
@@ -51,11 +51,6 @@
 	PurpleBlistNode node;
 };
 
-/**
- * PurpleChatClass:
- *
- * The base class for all #PurpleChat's.
- */
 struct _PurpleChatClass {
 	PurpleBlistNodeClass node_class;
 
--- a/libpurple/cipher.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/cipher.h	Wed Sep 14 14:53:12 2016 -0500
@@ -73,11 +73,6 @@
 	GObject gparent;
 };
 
-/**
- * PurpleCipherClass:
- *
- * The base class for all #PurpleCipher's.
- */
 struct _PurpleCipherClass {
 	GObjectClass parent_class;
 
@@ -139,11 +134,6 @@
 	GObject gparent;
 };
 
-/**
- * PurpleHashClass:
- *
- * The base class for all #PurpleHash's.
- */
 struct _PurpleHashClass {
 	GObjectClass parent_class;
 
--- a/libpurple/contact.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/contact.h	Wed Sep 14 14:53:12 2016 -0500
@@ -53,11 +53,6 @@
 	PurpleCountingNode counting;
 };
 
-/**
- * PurpleContactClass:
- *
- * The base class for all #PurpleContact's.
- */
 struct _PurpleContactClass {
 	PurpleCountingNodeClass counting_class;
 
--- a/libpurple/countingnode.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/countingnode.h	Wed Sep 14 14:53:12 2016 -0500
@@ -63,11 +63,6 @@
 	PurpleBlistNode node;
 };
 
-/**
- * PurpleCountingNodeClass:
- *
- * The base class for all #PurpleCountingNode's.
- */
 struct _PurpleCountingNodeClass {
 	PurpleBlistNodeClass node_class;
 
--- a/libpurple/group.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/group.h	Wed Sep 14 14:53:12 2016 -0500
@@ -63,11 +63,6 @@
 	PurpleCountingNode counting;
 };
 
-/**
- * PurpleGroupClass:
- *
- * The base class for all #PurpleGroup's.
- */
 struct _PurpleGroupClass {
 	PurpleCountingNodeClass counting_class;
 
--- a/libpurple/media.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/media.h	Wed Sep 14 14:53:12 2016 -0500
@@ -494,7 +494,7 @@
 /**
  * purple_media_send_dtmf:
  * @media: The media instance to send a DTMF signal to.
- * @sess_id: The session id of the session to send the DTMF signal on.
+ * @session_id: The session id of the session to send the DTMF signal on.
  * @dtmf: The character representing the DTMF in the range [0-9#*A-D].
  * @volume: The power level expressed in dBm0 after dropping the sign in the
  *          range of 0 to 63.  A larger value represents a lower volume.
--- a/libpurple/mediamanager.c	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/mediamanager.c	Wed Sep 14 14:53:12 2016 -0500
@@ -1229,6 +1229,7 @@
 	GList *iter;
 
 	g_return_val_if_fail(PURPLE_IS_MEDIA_MANAGER(manager), NULL);
+	g_return_val_if_fail(id != NULL, NULL);
 
 	iter = manager->priv->elements;
 
--- a/libpurple/plugins.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/plugins.h	Wed Sep 14 14:53:12 2016 -0500
@@ -60,12 +60,6 @@
  */
 typedef GPluginPlugin PurplePlugin;
 
-/**
- * PurplePluginClass:
- *
- * The base class for all #PurplePlugin's.
- * This type is an alias for GPluginPluginClass.
- */
 typedef GPluginPluginClass PurplePluginClass;
 
 #else /* !defined(PURPLE_PLUGINS) */
@@ -178,11 +172,6 @@
 	gpointer ui_data;
 };
 
-/**
- * PurplePluginInfoClass:
- *
- * The base class for all #PurplePluginInfo's.
- */
 struct _PurplePluginInfoClass {
 #ifdef PURPLE_PLUGINS
 	GPluginPluginInfoClass parent_class;
--- a/libpurple/proxy.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/proxy.h	Wed Sep 14 14:53:12 2016 -0500
@@ -309,6 +309,7 @@
 
 /**
  * purple_proxy_connect_cancel:
+ * @connect_data: The #PurpleProxyConnectData to cancel.
  *
  * Cancel an in-progress connection attempt.  This should be called
  * by the protocol if the user disables an account while it is still
--- a/libpurple/server.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/server.h	Wed Sep 14 14:53:12 2016 -0500
@@ -78,6 +78,8 @@
 
 /**
  * purple_get_attention_type_from_code:
+ * @account: The #PurpleAccount
+ * @type_code: The protocol specific attention type code to convert
  *
  * Get information about an account's attention commands, from the protocol.
  *
@@ -254,6 +256,10 @@
 
 /**
  * purple_serv_got_typing_stopped:
+ * @gc: The #PurpleConnection
+ * @name: The name of the person that stopped typing.
+ *
+ * Called from a protocol when it has recieved a type stopped.
  *
  * @todo Could probably move this into the conversation API.
  */
@@ -265,6 +271,7 @@
  * @who:    The username of the buddy that sent the message.
  * @msg:    The actual message received.
  * @flags:  The flags applicable to this message.
+ * @mtime:  The timestamp of the message.
  *
  * This function is called by the protocol when it receives an IM message.
  */
@@ -273,6 +280,7 @@
 
 /**
  * purple_serv_join_chat:
+ * @gc:   The #PurpleConnection
  * @data: The hash function should be g_str_hash() and the equal
  *             function should be g_str_equal().
  */
@@ -280,6 +288,7 @@
 
 /**
  * purple_serv_reject_chat:
+ * @gc: The #PurpleConnection 
  * @data: The hash function should be g_str_hash() and the equal
  *             function should be g_str_equal().
  */
@@ -350,7 +359,7 @@
 
 /**
  * purple_serv_send_file:
- * @g:      The connection on which the message was received.
+ * @gc:     The connection on which the message was received.
  * @who:    The name of the user to who send the file.
  * @file:   The filename to send.
  *
--- a/libpurple/signals.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/signals.h	Wed Sep 14 14:53:12 2016 -0500
@@ -40,9 +40,9 @@
 
 G_BEGIN_DECLS
 
-/**************************************************************************/
-/* Signal API                                                             */
-/**************************************************************************/
+/******************************************************************************
+ * Signal API
+ *****************************************************************************/
 
 /**
  * PURPLE_SIGNAL_PRIORITY_DEFAULT:
@@ -247,6 +247,7 @@
  * purple_signal_emit:
  * @instance: The instance emitting the signal.
  * @signal:   The signal being emitted.
+ * @...:      The arguments to pass to the callbacks.
  *
  * Emits a signal.
  *
@@ -270,6 +271,7 @@
  * purple_signal_emit_return_1:
  * @instance: The instance emitting the signal.
  * @signal:   The signal being emitted.
+ * @...:      The arguments to pass to the callbacks.
  *
  * Emits a signal and returns the first non-NULL return value.
  *
--- a/libpurple/sound.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/sound.h	Wed Sep 14 14:53:12 2016 -0500
@@ -90,6 +90,12 @@
 
 /**
  * PurpleSoundUiOps:
+ * @init: Called when the UI should initialize sound
+ * @uninit: Called when the UI should teardown sound
+ * @play_file: Called when a file should be played.
+ *             <sbr/>@filename: The filename to play
+ * @play_event: Called when a sound event should be played.
+ *              <sbr/>@event: The #@PurpleSoundEventID to play
  *
  * Operations used by the core to request that particular sound files, or the
  * sound associated with a particular event, should be played.
--- a/libpurple/sslconn.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/sslconn.h	Wed Sep 14 14:53:12 2016 -0500
@@ -30,6 +30,9 @@
 
 /**
  * PurpleSslErrorType:
+ * @PURPLE_SSL_HANDSHAKE_FAILED: The handshake failed
+ * @PURPLE_SSL_CONNECT_FAILED: The connection failed
+ * @PURPLE_SSL_CERTIFICATE_INVALID: The certificated is invalid
  *
  * Possible SSL errors.
  */
@@ -66,9 +69,10 @@
  * @inpa:            Glib event source ID; used to refer to the received data
  *                   callback in the glib eventloop
  * @connect_data:    Data related to the underlying TCP connection
+ * @conn:            The underlying #GTlsConnection
+ * @cancellable:     A cancellable to call when cancelled
  * @private_data:    Internal connection data managed by the SSL backend
  *                   (GnuTLS/LibNSS/whatever)
- * @verifier:        Verifier to use in authenticating the peer
  */
 struct _PurpleSslConnection
 {
--- a/libpurple/status.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/status.h	Wed Sep 14 14:53:12 2016 -0500
@@ -70,6 +70,16 @@
 /**
  * PurpleStatusPrimitive:
  *
+ * @PURPLE_STATUS_UNSET: The status is not set
+ * @PURPLE_STATUS_OFFLINE: The status is offline
+ * @PURPLE_STATUS_AVAILABLE: The status is available
+ * @PURPLE_STATUS_UNAVAILABLE: The status is unavailable
+ * @PURPLE_STATUS_INVISIBLE: The stuatus is invisible
+ * @PURPLE_STATUS_AWAY: The status is away
+ * @PURPLE_STATUS_EXTENDED_AWAY: The status is extended away/do not disturb
+ * @PURPLE_STATUS_MOBILE: The status is mobile
+ * @PURPLE_STATUS_TUNE: The status includes a song title
+ * @PURPLE_STATUS_MOOD: The status includes a mood
  * A primitive defining the basic structure of a status type.
  */
 /*
@@ -88,7 +98,9 @@
 	PURPLE_STATUS_MOBILE,
 	PURPLE_STATUS_TUNE,
 	PURPLE_STATUS_MOOD,
-	PURPLE_STATUS_NUM_PRIMITIVES
+
+	/*< private >*/
+	PURPLE_STATUS_NUM_PRIMITIVES,
 } PurpleStatusPrimitive;
 
 #include "presence.h"
--- a/libpurple/stringref.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/stringref.h	Wed Sep 14 14:53:12 2016 -0500
@@ -66,6 +66,7 @@
 /**
  * purple_stringref_printf:
  * @format: A printf-style format specification.
+ * @...: The arguments for the format specification.
  *
  * Creates an immutable reference-counted string object from a printf
  * format specification and arguments.  The created object will have a
--- a/libpurple/stun.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/stun.h	Wed Sep 14 14:53:12 2016 -0500
@@ -28,15 +28,20 @@
  * @title: STUN API
  */
 
-/**************************************************************************/
-/* STUN API                                                               */
-/**************************************************************************/
+/******************************************************************************
+ * STUN API
+ *****************************************************************************/
 
 typedef struct _PurpleStunNatDiscovery PurpleStunNatDiscovery;
 
 /**
  * PurpleStunStatus:
- * @PURPLE_STUN_STATUS_UNKNOWN: no STUN server reachable
+ * @PURPLE_STUN_STATUS_UNDISCOVERED: No request has been published
+ * @PURPLE_STUN_STATUS_UNKNOWN: No STUN server reachable
+ * @PURPLE_STUN_STATUS_DISCOVERING: The request has been sent to the server
+ * @PURPLE_STUN_STATUS_DISCOVERED: The server has responded
+ *
+ * The status of a #PurpleStunNatDiscovery
  */
 typedef enum {
 	PURPLE_STUN_STATUS_UNDISCOVERED = -1,
@@ -45,6 +50,17 @@
 	PURPLE_STUN_STATUS_DISCOVERED
 } PurpleStunStatus;
 
+/**
+ * PurpleStunNatType:
+ * @PURPLE_STUN_NAT_TYPE_PUBLIC_IP: No NAT
+ * @PURPLE_STUN_NAT_TYPE_UNKNOWN_NAT: NAT is unknown
+ * @PURPLE_STUN_NAT_TYPE_FULL_CONE: NAT is a full cone
+ * @PURPLE_STUN_NAT_TYPE_RESTRICTED_CONE: NAT is a restricted cone
+ * @PURPLE_STUN_NAT_TYPE_PORT_RESTRICTED_CONE: NAT is a port restricted cone
+ * @PURPLE_STUN_NAT_TYPE_SYMMETRIC: NAT is symmetric
+ *
+ * The type of NAT that was discovered.
+ */
 typedef enum {
 	PURPLE_STUN_NAT_TYPE_PUBLIC_IP,
 	PURPLE_STUN_NAT_TYPE_UNKNOWN_NAT,
@@ -54,6 +70,16 @@
 	PURPLE_STUN_NAT_TYPE_SYMMETRIC
 } PurpleStunNatType;
 
+/**
+ * PurpleStunNatDiscovery:
+ * @status: The #PurpleStunStatus
+ * @type: The #PurpleStunNatType
+ * @publicip: The public ip
+ * @servername: The name of the stun server
+ * @lookup_time: The time when the lookup occurred
+ *
+ * A data type representing a STUN lookup.
+ */
 struct _PurpleStunNatDiscovery {
 	PurpleStunStatus status;
 	PurpleStunNatType type;
@@ -76,8 +102,8 @@
  * is already done. Otherwise the callback is called when the discovery is over
  * and NULL is returned.
  *
- * Returns: a PurpleStunNatDiscovery which includes the public IP and the type
- *         of NAT or NULL is discovery would block
+ * Returns: a #PurpleStunNatDiscovery which includes the public IP and the type
+ *          of NAT or NULL if discovery would block
  */
 PurpleStunNatDiscovery *purple_stun_discover(PurpleStunCallback cb);
 
--- a/libpurple/util.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/util.h	Wed Sep 14 14:53:12 2016 -0500
@@ -44,6 +44,8 @@
 
 /**
  * PurpleKeyValuePair:
+ * @key: The key
+ * @value: The value
  *
  * A key-value pair.
  *
@@ -537,6 +539,8 @@
 
 /**
  * purple_markup_escape_text:
+ * @text: The text to escape
+ * @length: The length of the text, or -1 if #NULL terminated
  *
  * Escapes special characters in a plain-text string so they display
  * correctly as HTML.  For example, &amp; is replaced with &amp;amp; and &lt; is
--- a/libpurple/xfer.h	Fri Sep 09 12:43:59 2016 -0500
+++ b/libpurple/xfer.h	Wed Sep 14 14:53:12 2016 -0500
@@ -72,7 +72,7 @@
  * @PURPLE_XFER_STATUS_UNKNOWN:       Unknown, the xfer may be null.
  * @PURPLE_XFER_STATUS_NOT_STARTED:   It hasn't started yet.
  * @PURPLE_XFER_STATUS_ACCEPTED:      Receive accepted, but destination file
- *                                    not selected yet
+ *                                    not selected yet.
  * @PURPLE_XFER_STATUS_STARTED:       purple_xfer_start has been called.
  * @PURPLE_XFER_STATUS_DONE:          The xfer completed successfully.
  * @PURPLE_XFER_STATUS_CANCEL_LOCAL:  The xfer was cancelled by us.
@@ -94,6 +94,15 @@
 
 /**
  * PurpleXferUiOps:
+ * @new_xfer: UI op that's called after a new transfer is created.
+ * @destroy: UI op that's called when a transfer is being destroyed.
+ * @add_xfer: UI op that's called when a transfer should be added to the UI.
+ * @update_progress: UI op that's called when a transfer's progress has been
+ *                   updated.
+ * @cancel_local: UI op that's called when a transfer has been cancelled on the
+ *                local end.
+ * @cancel_remote: UI op that's called when a transfer has been cancelled on
+ *                 the remote end.
  * @ui_write: UI op to write data received from the protocol. The UI must deal
  *            with the entire buffer and return size, or it is treated as an
  *            error.
--- a/pidgin/gtkmedia.c	Fri Sep 09 12:43:59 2016 -0500
+++ b/pidgin/gtkmedia.c	Wed Sep 14 14:53:12 2016 -0500
@@ -1201,15 +1201,16 @@
 {
 #ifdef USE_VV
 	PurpleMediaManager *manager = purple_media_manager_get();
-	PurpleMediaElementInfo *video_src;
-	PurpleMediaElementInfo *video_sink;
-	PurpleMediaElementInfo *audio_src;
-	PurpleMediaElementInfo *audio_sink;
+	PurpleMediaElementInfo *video_src = NULL;
+	PurpleMediaElementInfo *video_sink = NULL;
+	PurpleMediaElementInfo *audio_src = NULL;
+	PurpleMediaElementInfo *audio_sink = NULL;
 	const char *pref;
 
 	pref = purple_prefs_get_string(
 			PIDGIN_PREFS_ROOT "/vvconfig/video/src/device");
-	video_src = purple_media_manager_get_element_info(manager, pref);
+	if (pref)
+		video_src = purple_media_manager_get_element_info(manager, pref);
 	if (!video_src) {
 		pref = "autovideosrc";
 		purple_prefs_set_string(
@@ -1220,7 +1221,8 @@
 
 	pref = purple_prefs_get_string(
 			PIDGIN_PREFS_ROOT "/vvconfig/video/sink/device");
-	video_sink = purple_media_manager_get_element_info(manager, pref);
+	if (pref)
+		video_sink = purple_media_manager_get_element_info(manager, pref);
 	if (!video_sink) {
 		pref = "autovideosink";
 		purple_prefs_set_string(
@@ -1231,7 +1233,8 @@
 
 	pref = purple_prefs_get_string(
 			PIDGIN_PREFS_ROOT "/vvconfig/audio/src/device");
-	audio_src = purple_media_manager_get_element_info(manager, pref);
+	if (pref)
+		audio_src = purple_media_manager_get_element_info(manager, pref);
 	if (!audio_src) {
 		pref = "autoaudiosrc";
 		purple_prefs_set_string(
@@ -1242,7 +1245,8 @@
 
 	pref = purple_prefs_get_string(
 			PIDGIN_PREFS_ROOT "/vvconfig/audio/sink/device");
-	audio_sink = purple_media_manager_get_element_info(manager, pref);
+	if (pref)
+		audio_sink = purple_media_manager_get_element_info(manager, pref);
 	if (!audio_sink) {
 		pref = "autoaudiosink";
 		purple_prefs_set_string(

mercurial