[vlc-devel] commit: Fix logic (Christophe Mutricy )
git version control
git at videolan.org
Mon Jan 19 22:19:48 CET 2009
vlc | branch: 0.9-bugfix | Christophe Mutricy <xtophe at videolan.org> | Sun Jan 18 17:58:56 2009 +0000| [7ad3e457f944cc79f3157113f4cab0413af16538] | committer: Christophe Mutricy
Fix logic
And unhibit before quiting
(cherry picked from commit af7d00505e986d331a737412260b80ed9a3de579)
Signed-off-by: Christophe Mutricy <xtophe at videolan.org>
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=7ad3e457f944cc79f3157113f4cab0413af16538
---
modules/misc/inhibit.c | 21 +++++++++++++++------
1 files changed, 15 insertions(+), 6 deletions(-)
diff --git a/modules/misc/inhibit.c b/modules/misc/inhibit.c
index b2c590f..d21c317 100644
--- a/modules/misc/inhibit.c
+++ b/modules/misc/inhibit.c
@@ -53,6 +53,9 @@ static void Deactivate ( vlc_object_t * );
static void Run ( intf_thread_t *p_intf );
+static int Inhibit( intf_thread_t *p_intf );
+static int UnInhibit( intf_thread_t *p_intf );
+
struct intf_sys_t
{
DBusConnection *p_conn;
@@ -106,6 +109,9 @@ static int Activate( vlc_object_t *p_this )
static void Deactivate( vlc_object_t *p_this )
{
intf_thread_t *p_intf = (intf_thread_t*)p_this;
+ if( p_intf->p_sys->i_cookie )
+ UnInhibit( p_intf );
+
dbus_connection_unref( p_intf->p_sys->p_conn );
free( p_intf->p_sys );
}
@@ -237,13 +243,16 @@ static void Run( intf_thread_t *p_intf )
p_input = vlc_object_find( p_intf, VLC_OBJECT_INPUT, FIND_ANYWHERE );
if( p_input )
{
- if( PLAYING_S == p_input->i_state && !p_intf->p_sys->i_cookie )
+ if( PLAYING_S == i_state )
{
- if( !Inhibit( p_intf ) )
- {
- vlc_object_release( p_input );
- goto end;
- }
+ if( !p_intf->p_sys->i_cookie )
+ {
+ if( !Inhibit( p_intf ) )
+ {
+ vlc_object_release( p_input );
+ goto end;
+ }
+ }
}
else if( p_intf->p_sys->i_cookie )
{
More information about the vlc-devel
mailing list