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 {