aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog6
-rw-r--r--debian/patches/lp_945827.patch449
-rw-r--r--debian/patches/lp_960846.patch166
-rw-r--r--debian/patches/series4
-rw-r--r--src/sound-service-dbus.c10
5 files changed, 6 insertions, 629 deletions
diff --git a/debian/changelog b/debian/changelog
index 9371bd2..ffedf74 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-indicator-sound (0.8.5.0-0ubuntu1) UNRELEASED; urgency=low
+indicator-sound (0.8.5.0-0ubuntu1) precise; urgency=low
* New upstream release.
- Inconsistency between messaging menu and sound menu pips (LP: #933593)
@@ -8,8 +8,10 @@ indicator-sound (0.8.5.0-0ubuntu1) UNRELEASED; urgency=low
monitoring (LP: #965848)
- minor memory leaks in blacklist handling (LP: #960578)
- FIX (LP: FIX)
+ * -debian/patches/lp_945827.patch, debian/patches/lp_960846.patch
+ - dropped, merged upstream
- -- Ken VanDine <ken.vandine@canonical.com> Fri, 30 Mar 2012 14:08:21 -0400
+ -- Ken VanDine <ken.vandine@canonical.com> Fri, 30 Mar 2012 14:45:03 -0400
indicator-sound (0.8.4.1-0ubuntu4) precise; urgency=low
diff --git a/debian/patches/lp_945827.patch b/debian/patches/lp_945827.patch
deleted file mode 100644
index c92ab33..0000000
--- a/debian/patches/lp_945827.patch
+++ /dev/null
@@ -1,449 +0,0 @@
-=== modified file 'src/metadata-widget.c'
---- old/src/metadata-widget.c 2012-03-19 14:58:53 +0000
-+++ new/src/metadata-widget.c 2012-03-20 20:19:44 +0000
-@@ -228,7 +228,7 @@
- GtkWidget* player_label;
- player_label = gtk_label_new ("");
- gtk_misc_set_alignment(GTK_MISC(player_label), (gfloat)0, (gfloat)0);
-- gtk_misc_set_padding (GTK_MISC(player_label), (gfloat)1, (gfloat)4);
-+ gtk_misc_set_padding (GTK_MISC(player_label), (gfloat)1, (gfloat)3);
- gtk_widget_set_size_request (player_label, 150, 24);
- priv->player_label = player_label;
-
-
-=== modified file 'src/mpris2-controller.c'
---- old/src/mpris2-controller.c 2012-03-16 17:50:43 +0000
-+++ new/src/mpris2-controller.c 2012-03-20 20:25:46 +0000
-@@ -151,6 +151,7 @@
- typedef struct _PlaylistsMenuitemClass PlaylistsMenuitemClass;
- #define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
- typedef struct _Mpris2ControllerFetchPlaylistsData Mpris2ControllerFetchPlaylistsData;
-+#define _active_playlist_container_free0(var) ((var == NULL) ? NULL : (var = (active_playlist_container_free (var), NULL)))
-
- struct _Mpris2Controller {
- GObject parent_instance;
-@@ -218,7 +219,7 @@
- void (*set_Orderings) (MprisPlaylists* self, gchar** value, int value_length1);
- guint32 (*get_PlaylistCount) (MprisPlaylists* self);
- void (*set_PlaylistCount) (MprisPlaylists* self, guint32 value);
-- void (*get_ActivePlaylist) (MprisPlaylists* self, ActivePlaylistContainer* value);
-+ ActivePlaylistContainer* (*get_ActivePlaylist) (MprisPlaylists* self);
- void (*set_ActivePlaylist) (MprisPlaylists* self, ActivePlaylistContainer* value);
- };
-
-@@ -281,8 +282,12 @@
- PlaylistDetails* _tmp9_;
- gint _tmp9__length1;
- PlayerController* _tmp10_;
-- gboolean _tmp11_;
-- gboolean* _tmp12_;
-+ GAppInfo* _tmp11_;
-+ GAppInfo* _tmp12_;
-+ const gchar* _tmp13_;
-+ PlayerController* _tmp14_;
-+ gboolean _tmp15_;
-+ gboolean* _tmp16_;
- GError * _inner_error_;
- };
-
-@@ -382,8 +387,10 @@
- static void mpris2_controller_fetch_playlists_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
- static void _vala_PlaylistDetails_array_free (PlaylistDetails* array, gint array_length);
- void playlists_menuitem_update (PlaylistsMenuitem* self, PlaylistDetails* playlists, int playlists_length1);
-+GAppInfo* player_controller_get_app_info (PlayerController* self);
- static gboolean* _bool_dup (gboolean* self);
--void mpris_playlists_get_ActivePlaylist (MprisPlaylists* self, ActivePlaylistContainer* result);
-+static gboolean mpris2_controller_validate_playlists_details (Mpris2Controller* self);
-+ActivePlaylistContainer* mpris_playlists_get_ActivePlaylist (MprisPlaylists* self);
- void playlists_menuitem_active_playlist_update (PlaylistsMenuitem* self, PlaylistDetails* detail);
- void mpris2_controller_activate_playlist (Mpris2Controller* self, const char* path);
- void mpris_playlists_ActivatePlaylist (MprisPlaylists* self, const char* playlist_id, GAsyncReadyCallback _callback_, gpointer _user_data_);
-@@ -580,7 +587,7 @@
- }
- _tmp31_ = _tmp26_;
- if (_tmp31_) {
-- g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 300, _mpris2_controller_fetch_active_playlist_gsource_func, g_object_ref (self), g_object_unref);
-+ g_timeout_add_full (G_PRIORITY_DEFAULT, (guint) 500, _mpris2_controller_fetch_active_playlist_gsource_func, g_object_ref (self), g_object_unref);
- }
- _tmp32_ = changed_properties;
- _tmp33_ = g_hash_table_lookup (_tmp32_, "PlaylistCount");
-@@ -1206,13 +1213,18 @@
- playlists_menuitem_update (_data_->_tmp8_, _data_->_tmp9_, _data_->_tmp9__length1);
- _g_object_unref0 (_data_->playlists_item);
- } else {
-- g_warning ("mpris2-controller.vala:243: Playlists are on but its returning no cur" \
--"rent_playlists");
- _data_->_tmp10_ = _data_->self->priv->_owner;
-- _data_->_tmp11_ = FALSE;
-- _data_->_tmp12_ = __bool_dup0 (&_data_->_tmp11_);
-- _g_free0 (_data_->_tmp10_->use_playlists);
-- _data_->_tmp10_->use_playlists = _data_->_tmp12_;
-+ _data_->_tmp11_ = player_controller_get_app_info (_data_->_tmp10_);
-+ _data_->_tmp12_ = _data_->_tmp11_;
-+ _data_->_tmp13_ = NULL;
-+ _data_->_tmp13_ = g_app_info_get_name (_data_->_tmp12_);
-+ g_warning ("mpris2-controller.vala:243: Playlists are on but %s is returning no c" \
-+"urrent_playlists ?", _data_->_tmp13_);
-+ _data_->_tmp14_ = _data_->self->priv->_owner;
-+ _data_->_tmp15_ = FALSE;
-+ _data_->_tmp16_ = __bool_dup0 (&_data_->_tmp15_);
-+ _g_free0 (_data_->_tmp14_->use_playlists);
-+ _data_->_tmp14_->use_playlists = _data_->_tmp16_;
- }
- _data_->current_playlists = (_vala_PlaylistDetails_array_free (_data_->current_playlists, _data_->current_playlists_length1), NULL);
- if (_data_->_state_ == 0) {
-@@ -1225,50 +1237,121 @@
- }
-
-
--static gboolean mpris2_controller_fetch_active_playlist (Mpris2Controller* self) {
-+static gboolean mpris2_controller_validate_playlists_details (Mpris2Controller* self) {
- gboolean result = FALSE;
- MprisPlaylists* _tmp0_;
-- ActivePlaylistContainer _tmp1_;
-- ActivePlaylistContainer _tmp2_;
-- ActivePlaylistContainer _tmp3_;
-+ ActivePlaylistContainer* _tmp1_;
-+ ActivePlaylistContainer* _tmp2_;
-+ ActivePlaylistContainer* _tmp3_;
- gboolean _tmp4_;
- gboolean _tmp5_;
-- PlayerController* _tmp6_;
-- GeeArrayList* _tmp7_;
-- gpointer _tmp8_ = NULL;
-- PlaylistsMenuitem* playlists_item;
-- PlaylistsMenuitem* _tmp9_;
-- MprisPlaylists* _tmp10_;
-- ActivePlaylistContainer _tmp11_;
-- ActivePlaylistContainer _tmp12_;
-- ActivePlaylistContainer _tmp13_;
-- PlaylistDetails* _tmp14_;
-- PlaylistDetails _tmp15_;
-+ MprisPlaylists* _tmp6_;
-+ ActivePlaylistContainer* _tmp7_;
-+ ActivePlaylistContainer* _tmp8_;
-+ ActivePlaylistContainer* _tmp9_;
-+ PlaylistDetails* _tmp10_;
-+ gboolean _tmp11_;
-+ gboolean _tmp12_ = FALSE;
-+ MprisPlaylists* _tmp13_;
-+ ActivePlaylistContainer* _tmp14_;
-+ ActivePlaylistContainer* _tmp15_;
-+ ActivePlaylistContainer* _tmp16_;
-+ PlaylistDetails* _tmp17_;
-+ const char* _tmp18_;
-+ gboolean _tmp19_;
-+ gboolean _tmp26_;
- g_return_val_if_fail (self != NULL, FALSE);
- _tmp0_ = self->priv->_playlists;
-- mpris_playlists_get_ActivePlaylist (_tmp0_, &_tmp1_);
-+ _tmp1_ = mpris_playlists_get_ActivePlaylist (_tmp0_);
- _tmp2_ = _tmp1_;
- _tmp3_ = _tmp2_;
-- _tmp4_ = _tmp3_.valid;
-+ _tmp4_ = (*_tmp3_).valid;
- _tmp5_ = _tmp4_ == FALSE;
-- active_playlist_container_destroy (&_tmp3_);
-+ _active_playlist_container_free0 (_tmp3_);
- if (_tmp5_) {
- result = FALSE;
- return result;
- }
-- _tmp6_ = self->priv->_owner;
-- _tmp7_ = _tmp6_->custom_items;
-- _tmp8_ = gee_abstract_list_get ((GeeAbstractList*) _tmp7_, (gint) PLAYER_CONTROLLER_WIDGET_ORDER_PLAYLISTS);
-- playlists_item = IS_PLAYLISTS_MENUITEM ((PlayerItem*) _tmp8_) ? ((PlaylistsMenuitem*) ((PlayerItem*) _tmp8_)) : NULL;
-- _tmp9_ = playlists_item;
-- _tmp10_ = self->priv->_playlists;
-- mpris_playlists_get_ActivePlaylist (_tmp10_, &_tmp11_);
-- _tmp12_ = _tmp11_;
-- _tmp13_ = _tmp12_;
-- _tmp14_ = _tmp13_.details;
-- _tmp15_ = *_tmp14_;
-- playlists_menuitem_active_playlist_update (_tmp9_, &_tmp15_);
-- active_playlist_container_destroy (&_tmp13_);
-+ _tmp6_ = self->priv->_playlists;
-+ _tmp7_ = mpris_playlists_get_ActivePlaylist (_tmp6_);
-+ _tmp8_ = _tmp7_;
-+ _tmp9_ = _tmp8_;
-+ _tmp10_ = (*_tmp9_).details;
-+ _tmp11_ = _tmp10_ == NULL;
-+ _active_playlist_container_free0 (_tmp9_);
-+ if (_tmp11_) {
-+ result = FALSE;
-+ return result;
-+ }
-+ _tmp13_ = self->priv->_playlists;
-+ _tmp14_ = mpris_playlists_get_ActivePlaylist (_tmp13_);
-+ _tmp15_ = _tmp14_;
-+ _tmp16_ = _tmp15_;
-+ _tmp17_ = (*_tmp16_).details;
-+ _tmp18_ = (*_tmp17_).path;
-+ _tmp19_ = _tmp18_ == NULL;
-+ _active_playlist_container_free0 (_tmp16_);
-+ if (_tmp19_) {
-+ _tmp12_ = TRUE;
-+ } else {
-+ MprisPlaylists* _tmp20_;
-+ ActivePlaylistContainer* _tmp21_;
-+ ActivePlaylistContainer* _tmp22_;
-+ ActivePlaylistContainer* _tmp23_;
-+ PlaylistDetails* _tmp24_;
-+ const gchar* _tmp25_;
-+ _tmp20_ = self->priv->_playlists;
-+ _tmp21_ = mpris_playlists_get_ActivePlaylist (_tmp20_);
-+ _tmp22_ = _tmp21_;
-+ _tmp23_ = _tmp22_;
-+ _tmp24_ = (*_tmp23_).details;
-+ _tmp25_ = (*_tmp24_).name;
-+ _tmp12_ = _tmp25_ == NULL;
-+ _active_playlist_container_free0 (_tmp23_);
-+ }
-+ _tmp26_ = _tmp12_;
-+ if (_tmp26_) {
-+ result = FALSE;
-+ return result;
-+ }
-+ result = TRUE;
-+ return result;
-+}
-+
-+
-+static gboolean mpris2_controller_fetch_active_playlist (Mpris2Controller* self) {
-+ gboolean result = FALSE;
-+ gboolean _tmp0_ = FALSE;
-+ PlayerController* _tmp1_;
-+ GeeArrayList* _tmp2_;
-+ gpointer _tmp3_ = NULL;
-+ PlaylistsMenuitem* playlists_item;
-+ PlaylistsMenuitem* _tmp4_;
-+ MprisPlaylists* _tmp5_;
-+ ActivePlaylistContainer* _tmp6_;
-+ ActivePlaylistContainer* _tmp7_;
-+ ActivePlaylistContainer* _tmp8_;
-+ PlaylistDetails* _tmp9_;
-+ PlaylistDetails _tmp10_;
-+ g_return_val_if_fail (self != NULL, FALSE);
-+ _tmp0_ = mpris2_controller_validate_playlists_details (self);
-+ if (_tmp0_ == FALSE) {
-+ result = FALSE;
-+ return result;
-+ }
-+ _tmp1_ = self->priv->_owner;
-+ _tmp2_ = _tmp1_->custom_items;
-+ _tmp3_ = gee_abstract_list_get ((GeeAbstractList*) _tmp2_, (gint) PLAYER_CONTROLLER_WIDGET_ORDER_PLAYLISTS);
-+ playlists_item = IS_PLAYLISTS_MENUITEM ((PlayerItem*) _tmp3_) ? ((PlaylistsMenuitem*) ((PlayerItem*) _tmp3_)) : NULL;
-+ _tmp4_ = playlists_item;
-+ _tmp5_ = self->priv->_playlists;
-+ _tmp6_ = mpris_playlists_get_ActivePlaylist (_tmp5_);
-+ _tmp7_ = _tmp6_;
-+ _tmp8_ = _tmp7_;
-+ _tmp9_ = (*_tmp8_).details;
-+ _tmp10_ = *_tmp9_;
-+ playlists_menuitem_active_playlist_update (_tmp4_, &_tmp10_);
-+ _active_playlist_container_free0 (_tmp8_);
- result = FALSE;
- _g_object_unref0 (playlists_item);
- return result;
-@@ -1298,7 +1381,7 @@
- _tmp2_ = path;
- _tmp3_ = e;
- _tmp4_ = _tmp3_->message;
-- g_warning ("mpris2-controller.vala:264: Could not activate playlist %s because %s", (const gchar*) _tmp2_, _tmp4_);
-+ g_warning ("mpris2-controller.vala:280: Could not activate playlist %s because %s", (const gchar*) _tmp2_, _tmp4_);
- _g_error_free0 (e);
- }
- __finally13:
-
-=== modified file 'src/mpris2-controller.vala'
---- old/src/mpris2-controller.vala 2012-03-02 16:26:40 +0000
-+++ new/src/mpris2-controller.vala 2012-03-20 20:19:44 +0000
-@@ -92,7 +92,7 @@
- }
- Variant? playlist_v = changed_properties.lookup("ActivePlaylist");
- if ( playlist_v != null && this.owner.use_playlists == true ){
-- Timeout.add (300, this.fetch_active_playlist);
-+ Timeout.add (500, this.fetch_active_playlist);
- }
- Variant? playlist_count_v = changed_properties.lookup("PlaylistCount");
- if ( playlist_count_v != null && this.owner.use_playlists == true ){
-@@ -240,14 +240,30 @@
- playlists_item.update(current_playlists);
- }
- else{
-- warning(" Playlists are on but its returning no current_playlists" );
-+ warning(" Playlists are on but %s is returning no current_playlists ?",
-+ this.owner.app_info.get_name());
- this.owner.use_playlists = false;
- }
- }
-
-+ private bool validate_playlists_details()
-+ {
-+ if (this.playlists.ActivePlaylist.valid == false){
-+ return false;
-+ }
-+ if (this.playlists.ActivePlaylist.details == null){
-+ return false;
-+ }
-+ if (this.playlists.ActivePlaylist.details.path == null ||
-+ this.playlists.ActivePlaylist.details.name == null){
-+ return false;
-+ }
-+ return true;
-+ }
-+
- private bool fetch_active_playlist()
- {
-- if (this.playlists.ActivePlaylist.valid == false){
-+ if (this.validate_playlists_details() == false){
- return false;
- }
- PlaylistsMenuitem playlists_item = this.owner.custom_items[PlayerController.widget_order.PLAYLISTS] as PlaylistsMenuitem;
-
-=== modified file 'src/mpris2-interfaces.c'
---- old/src/mpris2-interfaces.c 2012-03-16 17:59:34 +0000
-+++ new/src/mpris2-interfaces.c 2012-03-20 20:25:53 +0000
-@@ -70,6 +70,7 @@
- #define TYPE_MPRIS_PLAYLISTS_PROXY (mpris_playlists_proxy_get_type ())
- typedef GDBusProxy MprisPlaylistsProxy;
- typedef GDBusProxyClass MprisPlaylistsProxyClass;
-+#define _active_playlist_container_free0(var) ((var == NULL) ? NULL : (var = (active_playlist_container_free (var), NULL)))
-
- struct _MprisRootIface {
- GTypeInterface parent_iface;
-@@ -128,7 +129,7 @@
- void (*set_Orderings) (MprisPlaylists* self, gchar** value, int value_length1);
- guint32 (*get_PlaylistCount) (MprisPlaylists* self);
- void (*set_PlaylistCount) (MprisPlaylists* self, guint32 value);
-- void (*get_ActivePlaylist) (MprisPlaylists* self, ActivePlaylistContainer* value);
-+ ActivePlaylistContainer* (*get_ActivePlaylist) (MprisPlaylists* self);
- void (*set_ActivePlaylist) (MprisPlaylists* self, ActivePlaylistContainer* value);
- };
-
-@@ -263,7 +264,7 @@
- void mpris_playlists_set_Orderings (MprisPlaylists* self, gchar** value, int value_length1);
- guint32 mpris_playlists_get_PlaylistCount (MprisPlaylists* self);
- void mpris_playlists_set_PlaylistCount (MprisPlaylists* self, guint32 value);
--void mpris_playlists_get_ActivePlaylist (MprisPlaylists* self, ActivePlaylistContainer* result);
-+ActivePlaylistContainer* mpris_playlists_get_ActivePlaylist (MprisPlaylists* self);
- void mpris_playlists_set_ActivePlaylist (MprisPlaylists* self, ActivePlaylistContainer* value);
- static void g_cclosure_user_marshal_VOID__BOXED (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data);
- static void mpris_playlists_proxy_g_signal (GDBusProxy* proxy, const gchar* sender_name, const gchar* signal_name, GVariant* parameters);
-@@ -276,7 +277,7 @@
- static void mpris_playlists_dbus_proxy_set_Orderings (MprisPlaylists* self, gchar** value, int value_length1);
- static guint32 mpris_playlists_dbus_proxy_get_PlaylistCount (MprisPlaylists* self);
- static void mpris_playlists_dbus_proxy_set_PlaylistCount (MprisPlaylists* self, guint32 value);
--static void mpris_playlists_dbus_proxy_get_ActivePlaylist (MprisPlaylists* self, ActivePlaylistContainer* result);
-+static ActivePlaylistContainer* mpris_playlists_dbus_proxy_get_ActivePlaylist (MprisPlaylists* self);
- static void mpris_playlists_dbus_proxy_set_ActivePlaylist (MprisPlaylists* self, ActivePlaylistContainer* value);
- static void mpris_playlists_proxy_mpris_playlists_interface_init (MprisPlaylistsIface* iface);
- static void _dbus_mpris_playlists_ActivatePlaylist (MprisPlaylists* self, GVariant* parameters, GDBusMethodInvocation* invocation);
-@@ -1879,9 +1880,9 @@
- }
-
-
--void mpris_playlists_get_ActivePlaylist (MprisPlaylists* self, ActivePlaylistContainer* result) {
-- g_return_if_fail (self != NULL);
-- MPRIS_PLAYLISTS_GET_INTERFACE (self)->get_ActivePlaylist (self, result);
-+ActivePlaylistContainer* mpris_playlists_get_ActivePlaylist (MprisPlaylists* self) {
-+ g_return_val_if_fail (self != NULL, NULL);
-+ return MPRIS_PLAYLISTS_GET_INTERFACE (self)->get_ActivePlaylist (self);
- }
-
-
-@@ -2211,8 +2212,9 @@
- }
-
-
--static void mpris_playlists_dbus_proxy_get_ActivePlaylist (MprisPlaylists* self, ActivePlaylistContainer* result) {
-+static ActivePlaylistContainer* mpris_playlists_dbus_proxy_get_ActivePlaylist (MprisPlaylists* self) {
- GVariant *_inner_reply;
-+ ActivePlaylistContainer* _result;
- ActivePlaylistContainer _tmp39_;
- GVariantIter _tmp40_;
- GVariant* _tmp41_;
-@@ -2233,7 +2235,7 @@
- _arguments = g_variant_builder_end (&_arguments_builder);
- _reply = g_dbus_proxy_call_sync ((GDBusProxy *) self, "org.freedesktop.DBus.Properties.Get", _arguments, G_DBUS_CALL_FLAGS_NONE, -1, NULL, NULL);
- if (!_reply) {
-- return;
-+ return NULL;
- }
- g_variant_get (_reply, "(v)", &_inner_reply);
- g_variant_unref (_reply);
-@@ -2255,9 +2257,9 @@
- g_variant_unref (_tmp47_);
- _tmp39_.details = g_memdup (&_tmp43_, sizeof (PlaylistDetails));
- g_variant_unref (_tmp42_);
-- *result = _tmp39_;
-+ _result = g_memdup (&_tmp39_, sizeof (ActivePlaylistContainer));
- g_variant_unref (_inner_reply);
-- return;
-+ return _result;
- }
-
-
-@@ -2462,20 +2464,20 @@
-
-
- static GVariant* _dbus_mpris_playlists_get_ActivePlaylist (MprisPlaylists* self) {
-- ActivePlaylistContainer result = {0};
-+ ActivePlaylistContainer* result;
- GVariantBuilder _tmp62_;
- GVariantBuilder _tmp63_;
- GVariant* _reply;
-- mpris_playlists_get_ActivePlaylist (self, &result);
-+ result = mpris_playlists_get_ActivePlaylist (self);
- g_variant_builder_init (&_tmp62_, G_VARIANT_TYPE_TUPLE);
-- g_variant_builder_add_value (&_tmp62_, g_variant_new_boolean (result.valid));
-+ g_variant_builder_add_value (&_tmp62_, g_variant_new_boolean ((*result).valid));
- g_variant_builder_init (&_tmp63_, G_VARIANT_TYPE_TUPLE);
-- g_variant_builder_add_value (&_tmp63_, g_variant_new_object_path ((*result.details).path));
-- g_variant_builder_add_value (&_tmp63_, g_variant_new_string ((*result.details).name));
-- g_variant_builder_add_value (&_tmp63_, g_variant_new_string ((*result.details).icon_path));
-+ g_variant_builder_add_value (&_tmp63_, g_variant_new_object_path ((*(*result).details).path));
-+ g_variant_builder_add_value (&_tmp63_, g_variant_new_string ((*(*result).details).name));
-+ g_variant_builder_add_value (&_tmp63_, g_variant_new_string ((*(*result).details).icon_path));
- g_variant_builder_add_value (&_tmp62_, g_variant_builder_end (&_tmp63_));
- _reply = g_variant_builder_end (&_tmp62_);
-- active_playlist_container_destroy (&result);
-+ _active_playlist_container_free0 (result);
- return _reply;
- }
-
-@@ -2534,7 +2536,7 @@
-
-
- static void _dbus_mpris_playlists_set_ActivePlaylist (MprisPlaylists* self, GVariant* _value) {
-- ActivePlaylistContainer value = {0};
-+ ActivePlaylistContainer* value = NULL;
- ActivePlaylistContainer _tmp67_;
- GVariantIter _tmp68_;
- GVariant* _tmp69_;
-@@ -2561,9 +2563,9 @@
- g_variant_unref (_tmp75_);
- _tmp67_.details = g_memdup (&_tmp71_, sizeof (PlaylistDetails));
- g_variant_unref (_tmp70_);
-- value = _tmp67_;
-+ value = g_memdup (&_tmp67_, sizeof (ActivePlaylistContainer));
- mpris_playlists_set_ActivePlaylist (self, &value);
-- active_playlist_container_destroy (&value);
-+ _active_playlist_container_free0 (value);
- }
-
-
-
-=== modified file 'src/mpris2-interfaces.vala'
---- old/src/mpris2-interfaces.vala 2012-03-16 17:59:34 +0000
-+++ new/src/mpris2-interfaces.vala 2012-03-20 20:19:44 +0000
-@@ -65,7 +65,7 @@
- //properties
- public abstract string[] Orderings{owned get; set;}
- public abstract uint32 PlaylistCount{owned get; set;}
-- public abstract ActivePlaylistContainer ActivePlaylist {owned get; set;}
-+ public abstract ActivePlaylistContainer? ActivePlaylist {owned get; set;}
-
- //methods
- public abstract async void ActivatePlaylist(ObjectPath playlist_id) throws IOError;
-
diff --git a/debian/patches/lp_960846.patch b/debian/patches/lp_960846.patch
deleted file mode 100644
index ec8db91..0000000
--- a/debian/patches/lp_960846.patch
+++ /dev/null
@@ -1,166 +0,0 @@
-=== modified file 'src/mpris2-controller.vala'
-Index: indicator-sound-0.8.4.1/src/mpris2-controller.vala
-===================================================================
---- indicator-sound-0.8.4.1.orig/src/mpris2-controller.vala 2012-03-21 10:53:40.041652304 -0400
-+++ indicator-sound-0.8.4.1/src/mpris2-controller.vala 2012-03-21 10:53:40.053652304 -0400
-@@ -248,6 +248,9 @@
-
- private bool validate_playlists_details()
- {
-+ if (this.playlists.ActivePlaylist == null){
-+ return false;
-+ }
- if (this.playlists.ActivePlaylist.valid == false){
- return false;
- }
-Index: indicator-sound-0.8.4.1/src/mpris2-controller.c
-===================================================================
---- indicator-sound-0.8.4.1.orig/src/mpris2-controller.c 2012-03-21 10:53:40.037652304 -0400
-+++ indicator-sound-0.8.4.1/src/mpris2-controller.c 2012-03-21 10:54:46.433654489 -0400
-@@ -1244,73 +1244,88 @@
- ActivePlaylistContainer* _tmp2_;
- ActivePlaylistContainer* _tmp3_;
- gboolean _tmp4_;
-- gboolean _tmp5_;
-- MprisPlaylists* _tmp6_;
-+ MprisPlaylists* _tmp5_;
-+ ActivePlaylistContainer* _tmp6_;
- ActivePlaylistContainer* _tmp7_;
- ActivePlaylistContainer* _tmp8_;
-- ActivePlaylistContainer* _tmp9_;
-- PlaylistDetails* _tmp10_;
-- gboolean _tmp11_;
-- gboolean _tmp12_ = FALSE;
-- MprisPlaylists* _tmp13_;
-+ gboolean _tmp9_;
-+ gboolean _tmp10_;
-+ MprisPlaylists* _tmp11_;
-+ ActivePlaylistContainer* _tmp12_;
-+ ActivePlaylistContainer* _tmp13_;
- ActivePlaylistContainer* _tmp14_;
-- ActivePlaylistContainer* _tmp15_;
-- ActivePlaylistContainer* _tmp16_;
-- PlaylistDetails* _tmp17_;
-- const char* _tmp18_;
-- gboolean _tmp19_;
-- gboolean _tmp26_;
-+ PlaylistDetails* _tmp15_;
-+ gboolean _tmp16_;
-+ gboolean _tmp17_ = FALSE;
-+ MprisPlaylists* _tmp18_;
-+ ActivePlaylistContainer* _tmp19_;
-+ ActivePlaylistContainer* _tmp20_;
-+ ActivePlaylistContainer* _tmp21_;
-+ PlaylistDetails* _tmp22_;
-+ const char* _tmp23_;
-+ gboolean _tmp24_;
-+ gboolean _tmp31_;
- g_return_val_if_fail (self != NULL, FALSE);
- _tmp0_ = self->priv->_playlists;
- _tmp1_ = mpris_playlists_get_ActivePlaylist (_tmp0_);
- _tmp2_ = _tmp1_;
- _tmp3_ = _tmp2_;
-- _tmp4_ = (*_tmp3_).valid;
-- _tmp5_ = _tmp4_ == FALSE;
-+ _tmp4_ = _tmp3_ == NULL;
- _active_playlist_container_free0 (_tmp3_);
-- if (_tmp5_) {
-+ if (_tmp4_) {
- result = FALSE;
- return result;
- }
-- _tmp6_ = self->priv->_playlists;
-- _tmp7_ = mpris_playlists_get_ActivePlaylist (_tmp6_);
-+ _tmp5_ = self->priv->_playlists;
-+ _tmp6_ = mpris_playlists_get_ActivePlaylist (_tmp5_);
-+ _tmp7_ = _tmp6_;
- _tmp8_ = _tmp7_;
-- _tmp9_ = _tmp8_;
-- _tmp10_ = (*_tmp9_).details;
-- _tmp11_ = _tmp10_ == NULL;
-- _active_playlist_container_free0 (_tmp9_);
-- if (_tmp11_) {
-+ _tmp9_ = (*_tmp8_).valid;
-+ _tmp10_ = _tmp9_ == FALSE;
-+ _active_playlist_container_free0 (_tmp8_);
-+ if (_tmp10_) {
-+ result = FALSE;
-+ return result;
-+ }
-+ _tmp11_ = self->priv->_playlists;
-+ _tmp12_ = mpris_playlists_get_ActivePlaylist (_tmp11_);
-+ _tmp13_ = _tmp12_;
-+ _tmp14_ = _tmp13_;
-+ _tmp15_ = (*_tmp14_).details;
-+ _tmp16_ = _tmp15_ == NULL;
-+ _active_playlist_container_free0 (_tmp14_);
-+ if (_tmp16_) {
- result = FALSE;
- return result;
- }
-- _tmp13_ = self->priv->_playlists;
-- _tmp14_ = mpris_playlists_get_ActivePlaylist (_tmp13_);
-- _tmp15_ = _tmp14_;
-- _tmp16_ = _tmp15_;
-- _tmp17_ = (*_tmp16_).details;
-- _tmp18_ = (*_tmp17_).path;
-- _tmp19_ = _tmp18_ == NULL;
-- _active_playlist_container_free0 (_tmp16_);
-- if (_tmp19_) {
-- _tmp12_ = TRUE;
-+ _tmp18_ = self->priv->_playlists;
-+ _tmp19_ = mpris_playlists_get_ActivePlaylist (_tmp18_);
-+ _tmp20_ = _tmp19_;
-+ _tmp21_ = _tmp20_;
-+ _tmp22_ = (*_tmp21_).details;
-+ _tmp23_ = (*_tmp22_).path;
-+ _tmp24_ = _tmp23_ == NULL;
-+ _active_playlist_container_free0 (_tmp21_);
-+ if (_tmp24_) {
-+ _tmp17_ = TRUE;
- } else {
-- MprisPlaylists* _tmp20_;
-- ActivePlaylistContainer* _tmp21_;
-- ActivePlaylistContainer* _tmp22_;
-- ActivePlaylistContainer* _tmp23_;
-- PlaylistDetails* _tmp24_;
-- const gchar* _tmp25_;
-- _tmp20_ = self->priv->_playlists;
-- _tmp21_ = mpris_playlists_get_ActivePlaylist (_tmp20_);
-- _tmp22_ = _tmp21_;
-- _tmp23_ = _tmp22_;
-- _tmp24_ = (*_tmp23_).details;
-- _tmp25_ = (*_tmp24_).name;
-- _tmp12_ = _tmp25_ == NULL;
-- _active_playlist_container_free0 (_tmp23_);
-+ MprisPlaylists* _tmp25_;
-+ ActivePlaylistContainer* _tmp26_;
-+ ActivePlaylistContainer* _tmp27_;
-+ ActivePlaylistContainer* _tmp28_;
-+ PlaylistDetails* _tmp29_;
-+ const gchar* _tmp30_;
-+ _tmp25_ = self->priv->_playlists;
-+ _tmp26_ = mpris_playlists_get_ActivePlaylist (_tmp25_);
-+ _tmp27_ = _tmp26_;
-+ _tmp28_ = _tmp27_;
-+ _tmp29_ = (*_tmp28_).details;
-+ _tmp30_ = (*_tmp29_).name;
-+ _tmp17_ = _tmp30_ == NULL;
-+ _active_playlist_container_free0 (_tmp28_);
- }
-- _tmp26_ = _tmp12_;
-- if (_tmp26_) {
-+ _tmp31_ = _tmp17_;
-+ if (_tmp31_) {
- result = FALSE;
- return result;
- }
-@@ -1381,7 +1396,7 @@
- _tmp2_ = path;
- _tmp3_ = e;
- _tmp4_ = _tmp3_->message;
-- g_warning ("mpris2-controller.vala:280: Could not activate playlist %s because %s", (const gchar*) _tmp2_, _tmp4_);
-+ g_warning ("mpris2-controller.vala:283: Could not activate playlist %s because %s", (const gchar*) _tmp2_, _tmp4_);
- _g_error_free0 (e);
- }
- __finally13:
diff --git a/debian/patches/series b/debian/patches/series
index 19a2a69..2e365f2 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,4 +1,2 @@
-sound_nua.patch
+sound_nua.patch
sound_xubuntu.patch
-lp_945827.patch
-lp_960846.patch
diff --git a/src/sound-service-dbus.c b/src/sound-service-dbus.c
index c503220..5e004cb 100644
--- a/src/sound-service-dbus.c
+++ b/src/sound-service-dbus.c
@@ -227,16 +227,8 @@ show_sound_settings_dialog (DbusmenuMenuitem *mi,
gpointer user_data)
{
GError * error = NULL;
- gchar* cmd;
- if (!g_strcmp0 (g_getenv ("XDG_CURRENT_DESKTOP"), "Unity"))
- cmd = "gnome-control-center sound-nua";
- else if (!g_strcmp0 (g_getenv ("DESKTOP_SESSION"), "xubuntu"))
- cmd = "pavucontrol";
- else
- cmd = "gnome-control-center sound";
-
if (!g_spawn_command_line_async("gnome-volume-control --page=applications", &error) &&
- !g_spawn_command_line_async(cmd, &error) &&
+ !g_spawn_command_line_async("gnome-control-center sound", &error) &&
!g_spawn_command_line_async("xfce4-mixer", &error))
{
g_warning("Unable to show dialog: %s", error->message);