From 71ad2dad2c9d6f94e77ab76616eeefddc70eae26 Mon Sep 17 00:00:00 2001 From: sletz Date: Wed, 9 Jul 2008 15:45:30 +0000 Subject: [PATCH] Fix JackFreewheelDriver::Process() in case if client time-out : continue processing until a better recovery strategy is chosen. git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@2672 0c269be4-1314-0410-8aa9-9f06e86f4224 --- ChangeLog | 1 + common/JackFreewheelDriver.cpp | 3 ++- common/JackThreadedDriver.cpp | 1 - 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index e638cdbf..d47a863e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -24,6 +24,7 @@ Romain Moret 2008-07-08 Stephane Letz * Add jack_get_descriptor in internal clients API. + * Fix JackFreewheelDriver::Process() in case if client time-out : continue processing until a better recovery strategy is chosen. 2008-07-08 Stephane Letz diff --git a/common/JackFreewheelDriver.cpp b/common/JackFreewheelDriver.cpp index e23071ae..96311365 100644 --- a/common/JackFreewheelDriver.cpp +++ b/common/JackFreewheelDriver.cpp @@ -42,7 +42,8 @@ int JackFreewheelDriver::Process() fGraphManager->ResumeRefNum(&fClientControl, fSynchroTable); // Signal all clients if (fGraphManager->SuspendRefNum(&fClientControl, fSynchroTable, FREEWHEEL_DRIVER_TIMEOUT * 1000000) < 0) { // Wait for all clients to finish for 10 sec jack_error("JackFreewheelDriver::ProcessSync SuspendRefNum error"); - return -1; + /* We have a client time-out error, but still continue to process, until a better recovery strategy is chosen */ + return 0; } } else { fGraphManager->ResumeRefNum(&fClientControl, fSynchroTable); // Signal all clients diff --git a/common/JackThreadedDriver.cpp b/common/JackThreadedDriver.cpp index 0990bedc..a542a660 100644 --- a/common/JackThreadedDriver.cpp +++ b/common/JackThreadedDriver.cpp @@ -31,7 +31,6 @@ #include "JackGlobals.h" #include "JackClient.h" #include "JackEngineControl.h" -#include "JackException.h" namespace Jack {