[Pkg-cli-apps-commits] [banshee] 01/02: Patch to fix Banshee's second instance crashing out
Chow Loong Jin
hyperair at debian.org
Sun Mar 2 10:20:08 UTC 2014
This is an automated email from the git hooks/post-receive script.
hyperair pushed a commit to branch master
in repository banshee.
commit 9d70c78f806d97dd8d111c5305198274c773a79a
Author: Chow Loong Jin <hyperair at debian.org>
Date: Sun Mar 2 15:50:24 2014 +0800
Patch to fix Banshee's second instance crashing out
This fixes the ArgumentException that occurs when dbus-sharp tries to synthesize
a proxy class out of the IPlayerEngine interface.
Closes: #731978
---
...sExportable-inheritance-from-exported-int.patch | 132 +++++++++++++++++++++
debian/patches/series | 1 +
2 files changed, 133 insertions(+)
diff --git a/debian/patches/Remove-IDBusExportable-inheritance-from-exported-int.patch b/debian/patches/Remove-IDBusExportable-inheritance-from-exported-int.patch
new file mode 100644
index 0000000..9f38094
--- /dev/null
+++ b/debian/patches/Remove-IDBusExportable-inheritance-from-exported-int.patch
@@ -0,0 +1,132 @@
+From: Chow Loong Jin <hyperair at debian.org>
+Date: Sat, 1 Mar 2014 15:52:39 +0800
+Subject: Remove IDBusExportable inheritance from exported interfaces
+
+This fixes the crashes when attempting to control an existing instance of
+Banshee using the command-line interface.
+
+Bug-Debian: #731978
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=725446
+---
+ src/Core/Banshee.Services/Banshee.MediaEngine/IPlayerEngineService.cs | 2 +-
+ src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs | 2 +-
+ .../Banshee.PlaybackController/IPlaybackControllerService.cs | 2 +-
+ .../Banshee.PlaybackController/PlaybackControllerService.cs | 4 ++--
+ src/Core/Banshee.Services/Banshee.Sources/ISourceManager.cs | 2 +-
+ src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs | 2 +-
+ src/Core/Banshee.ThickClient/Banshee.Gui/IClientWindow.cs | 2 +-
+ src/Core/Banshee.ThickClient/Banshee.Gui/IGlobalUIActions.cs | 4 ++--
+ 8 files changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/src/Core/Banshee.Services/Banshee.MediaEngine/IPlayerEngineService.cs b/src/Core/Banshee.Services/Banshee.MediaEngine/IPlayerEngineService.cs
+index fc935ac..f29cfa5 100644
+--- a/src/Core/Banshee.Services/Banshee.MediaEngine/IPlayerEngineService.cs
++++ b/src/Core/Banshee.Services/Banshee.MediaEngine/IPlayerEngineService.cs
+@@ -35,7 +35,7 @@ using Banshee.ServiceStack;
+ namespace Banshee.MediaEngine
+ {
+ [Interface("org.bansheeproject.Banshee.PlayerEngine")]
+- public interface IPlayerEngineService : IDBusExportable
++ public interface IPlayerEngineService
+ {
+ event DBusPlayerEventHandler EventChanged;
+ event DBusPlayerStateHandler StateChanged;
+diff --git a/src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs b/src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs
+index 793b9cd..83cbe67 100644
+--- a/src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs
++++ b/src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs
+@@ -51,7 +51,7 @@ namespace Banshee.MediaEngine
+ public delegate bool TrackInterceptHandler (TrackInfo track);
+
+ public class PlayerEngineService : IInitializeService, IDelayedInitializeService,
+- IRequiredService, IPlayerEngineService, IDisposable
++ IRequiredService, IPlayerEngineService, IDBusExportable, IDisposable
+ {
+ private List<PlayerEngine> engines = new List<PlayerEngine> ();
+ private PlayerEngine active_engine;
+diff --git a/src/Core/Banshee.Services/Banshee.PlaybackController/IPlaybackControllerService.cs b/src/Core/Banshee.Services/Banshee.PlaybackController/IPlaybackControllerService.cs
+index deb1feb..a764272 100644
+--- a/src/Core/Banshee.Services/Banshee.PlaybackController/IPlaybackControllerService.cs
++++ b/src/Core/Banshee.Services/Banshee.PlaybackController/IPlaybackControllerService.cs
+@@ -36,7 +36,7 @@ namespace Banshee.PlaybackController
+ public delegate void PlaybackControllerStoppedHandler ();
+
+ [Interface ("org.bansheeproject.Banshee.PlaybackController")]
+- public interface IPlaybackControllerService : IDBusExportable
++ public interface IPlaybackControllerService
+ {
+ // FIXME: IPlaybackControllerExportable : IPlaybackController
+ // but DBus-Sharp has a design flaw where it only exports
+diff --git a/src/Core/Banshee.Services/Banshee.PlaybackController/PlaybackControllerService.cs b/src/Core/Banshee.Services/Banshee.PlaybackController/PlaybackControllerService.cs
+index 1b8020f..af700a6 100644
+--- a/src/Core/Banshee.Services/Banshee.PlaybackController/PlaybackControllerService.cs
++++ b/src/Core/Banshee.Services/Banshee.PlaybackController/PlaybackControllerService.cs
+@@ -38,8 +38,8 @@ using Banshee.MediaEngine;
+
+ namespace Banshee.PlaybackController
+ {
+- public class PlaybackControllerService : IRequiredService, ICanonicalPlaybackController,
+- IPlaybackController, IPlaybackControllerService
++ public class PlaybackControllerService : IDBusExportable, IRequiredService,
++ ICanonicalPlaybackController, IPlaybackController, IPlaybackControllerService
+ {
+ private enum Direction
+ {
+diff --git a/src/Core/Banshee.Services/Banshee.Sources/ISourceManager.cs b/src/Core/Banshee.Services/Banshee.Sources/ISourceManager.cs
+index 18203c7..4cfc697 100644
+--- a/src/Core/Banshee.Services/Banshee.Sources/ISourceManager.cs
++++ b/src/Core/Banshee.Services/Banshee.Sources/ISourceManager.cs
+@@ -36,7 +36,7 @@ using Banshee.ServiceStack;
+ namespace Banshee.Sources
+ {
+ [Interface("org.bansheeproject.Banshee.SourceManager")]
+- public interface ISourceManager : IDBusExportable
++ public interface ISourceManager
+ {
+ //event SourceEventHandler SourceUpdated;
+ ISource ActiveSource { get; set; }
+diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs b/src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs
+index 48d10bc..1a33a2b 100644
+--- a/src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs
++++ b/src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs
+@@ -40,7 +40,7 @@ using Banshee.Playlist;
+
+ namespace Banshee.Gui
+ {
+- public class GlobalActions : BansheeActionGroup, IGlobalUIActions
++ public class GlobalActions : BansheeActionGroup, IGlobalUIActions, IDBusExportable
+ {
+ public GlobalActions () : base ("Global")
+ {
+diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui/IClientWindow.cs b/src/Core/Banshee.ThickClient/Banshee.Gui/IClientWindow.cs
+index 1d693b1..77604f7 100644
+--- a/src/Core/Banshee.ThickClient/Banshee.Gui/IClientWindow.cs
++++ b/src/Core/Banshee.ThickClient/Banshee.Gui/IClientWindow.cs
+@@ -34,7 +34,7 @@ using Banshee.ServiceStack;
+ namespace Banshee.Gui
+ {
+ [Interface ("org.bansheeproject.Banshee.ClientWindow")]
+- public interface IClientWindow : IDBusExportable
++ public interface IClientWindow
+ {
+ void Present ();
+ void Hide ();
+diff --git a/src/Core/Banshee.ThickClient/Banshee.Gui/IGlobalUIActions.cs b/src/Core/Banshee.ThickClient/Banshee.Gui/IGlobalUIActions.cs
+index 34124c5..e9a53d0 100644
+--- a/src/Core/Banshee.ThickClient/Banshee.Gui/IGlobalUIActions.cs
++++ b/src/Core/Banshee.ThickClient/Banshee.Gui/IGlobalUIActions.cs
+@@ -32,11 +32,11 @@ using Banshee.ServiceStack;
+ namespace Banshee.Gui
+ {
+ [Interface ("org.bansheeproject.Banshee.GlobalUIActions")]
+- public interface IGlobalUIActions : IDBusExportable
++ public interface IGlobalUIActions
+ {
+ void ShowImportDialog ();
+ void ShowAboutDialog ();
+ void ShowOpenLocationDialog ();
+ void ShowPreferencesDialog ();
+ }
+-}
+\ No newline at end of file
++}
diff --git a/debian/patches/series b/debian/patches/series
index 69335e0..3241079 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -12,3 +12,4 @@ Remove-build-time-enable-gapless-playback-option.patch
Don-t-use-the-new-decoded-pad-signal-of-decodebin.patch
Use-new-style-GStreamer-1.0-raw-audio-caps-in-the-WA.patch
Use-dbus-2.patch
+Remove-IDBusExportable-inheritance-from-exported-int.patch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-cli-apps/packages/banshee.git
More information about the Pkg-cli-apps-commits
mailing list