From be6c72d18b0967a3d78ac6740036a829e7e89ccb Mon Sep 17 00:00:00 2001
From: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>
Date: Mon, 2 Feb 2009 12:10:16 -0500
Subject: [PATCH] FIx the switching layer bug

---
 src/audio/pulselayer.cpp | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)

diff --git a/src/audio/pulselayer.cpp b/src/audio/pulselayer.cpp
index 9843666c64..a4ccdb7702 100644
--- a/src/audio/pulselayer.cpp
+++ b/src/audio/pulselayer.cpp
@@ -44,7 +44,12 @@ static  void audioCallback ( pa_stream* s, size_t bytes, void* userdata )
 // Destructor
 PulseLayer::~PulseLayer (void) 
 { 
-    closeLayer();
+    /* Delete the pointer streams */
+    delete playback;
+    delete record;
+  
+    pa_context_disconnect( context );  
+    pa_context_unref( context );
 }
 
   void
@@ -58,15 +63,6 @@ PulseLayer::closeLayer( void )
   while(PulseLayer::streamState != 2)
     ;
   PulseLayer::streamState = 0; 
-
-  delete playback;
-  delete record;
-
-  pa_context_disconnect( context );  
-  pa_context_unref( context );
-  
-  //TODO  Remove this ugly hack
-  sleep(2);
 }
 
   void
-- 
GitLab