diff --git a/common/JackEngine.cpp b/common/JackEngine.cpp index ae35e1d6..16377720 100644 --- a/common/JackEngine.cpp +++ b/common/JackEngine.cpp @@ -483,30 +483,30 @@ int JackEngine::ClientInternalCloseIm(int refnum) int JackEngine::ClientCloseAux(int refnum, JackClientInterface* client, bool wait) { - JackLog("JackEngine::ClientCloseAux ref = %ld name = %s\n", - refnum, + JackLog("JackEngine::ClientCloseAux ref = %ld name = %s\n", + refnum, (client->GetClientControl()) ? client->GetClientControl()->fName : "No name"); // Remove the client from the table - fClientTable[refnum] = NULL; + fClientTable[refnum] = NULL; // Remove ports - fGraphManager->RemoveAllPorts(refnum); + fGraphManager->RemoveAllPorts(refnum); // Wait until next cycle to be sure client is not used anymore if (wait) { if (!fSignal->TimedWait(fEngineControl->fTimeOutUsecs * 2)) { // Must wait at least until a switch occurs in Process, even in case of graph end failure jack_error("JackEngine::ClientCloseAux wait error ref = %ld", refnum); } - } + } - // Notify running clients - if (client->GetClientControl()) // When called in erro cases, client may not be completrly allocated - NotifyRemoveClient(client->GetClientControl()->fName, client->GetClientControl()->fRefNum); + // Notify running clients + if (client->GetClientControl()) // When called in error cases, client may not be completely allocated + NotifyRemoveClient(client->GetClientControl()->fName, client->GetClientControl()->fRefNum); // Cleanup... fSynchroTable[refnum]->Destroy(); - fEngineTiming->ResetRollingUsecs(); + fEngineTiming->ResetRollingUsecs(); return 0; } diff --git a/windows/JackdmpWIN32.cpp b/windows/JackdmpWIN32.cpp index ac5d5f91..59556759 100644 --- a/windows/JackdmpWIN32.cpp +++ b/windows/JackdmpWIN32.cpp @@ -21,7 +21,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. #include #include #include -#include +#include #include #include "JackServer.h" @@ -47,8 +47,8 @@ static int sync = 0; static int xverbose = 0; #define DEFAULT_TMP_DIR "/tmp" -char *jack_tmpdir = DEFAULT_TMP_DIR; - +char *jack_tmpdir = DEFAULT_TMP_DIR; + HANDLE waitEvent; void jack_print_driver_options (jack_driver_desc_t * desc, FILE *file); @@ -111,13 +111,13 @@ static int JackDelete() delete fServer; printf("Jackdmp: delete server\n"); return 0; -} - -static void intrpt(int signum) -{ - printf("jack main caught signal %d\n", signum); - (void) signal(SIGINT, SIG_DFL); - SetEvent(waitEvent); +} + +static void intrpt(int signum) +{ + printf("jack main caught signal %d\n", signum); + (void) signal(SIGINT, SIG_DFL); + SetEvent(waitEvent); } /* @@ -204,48 +204,48 @@ static void jack_cleanup_files (const char *server_name) } } } -*/ - -/* -BOOL CtrlHandler( DWORD fdwCtrlType ) -{ - switch( fdwCtrlType ) - { - // Handle the CTRL-C signal. - case CTRL_C_EVENT: - printf( "Ctrl-C event\n\n" ); - Beep( 750, 300 ); - SetEvent(waitEvent); - return( TRUE ); - - // CTRL-CLOSE: confirm that the user wants to exit. - case CTRL_CLOSE_EVENT: - Beep( 600, 200 ); - printf( "Ctrl-Close event\n\n" ); - SetEvent(waitEvent); - return( TRUE ); - - // Pass other signals to the next handler. - case CTRL_BREAK_EVENT: - Beep( 900, 200 ); - printf( "Ctrl-Break event\n\n" ); - return FALSE; - - case CTRL_LOGOFF_EVENT: - Beep( 1000, 200 ); - printf( "Ctrl-Logoff event\n\n" ); - return FALSE; - - case CTRL_SHUTDOWN_EVENT: - Beep( 750, 500 ); - printf( "Ctrl-Shutdown event\n\n" ); - return FALSE; - - default: - return FALSE; - } -} - +*/ + +/* +BOOL CtrlHandler( DWORD fdwCtrlType ) +{ + switch( fdwCtrlType ) + { + // Handle the CTRL-C signal. + case CTRL_C_EVENT: + printf( "Ctrl-C event\n\n" ); + Beep( 750, 300 ); + SetEvent(waitEvent); + return( TRUE ); + + // CTRL-CLOSE: confirm that the user wants to exit. + case CTRL_CLOSE_EVENT: + Beep( 600, 200 ); + printf( "Ctrl-Close event\n\n" ); + SetEvent(waitEvent); + return( TRUE ); + + // Pass other signals to the next handler. + case CTRL_BREAK_EVENT: + Beep( 900, 200 ); + printf( "Ctrl-Break event\n\n" ); + return FALSE; + + case CTRL_LOGOFF_EVENT: + Beep( 1000, 200 ); + printf( "Ctrl-Logoff event\n\n" ); + return FALSE; + + case CTRL_SHUTDOWN_EVENT: + Beep( 750, 500 ); + printf( "Ctrl-Shutdown event\n\n" ); + return FALSE; + + default: + return FALSE; + } +} + */ int main(int argc, char* argv[]) @@ -282,12 +282,12 @@ int main(int argc, char* argv[]) int sync = 0; int i; int rc; - char c; - - // Creates wait event - if ((waitEvent = CreateEvent(NULL, FALSE, FALSE, NULL)) == NULL) { - printf("CreateEvent fails err = %ld\n", GetLastError()); - return 0; + char c; + + // Creates wait event + if ((waitEvent = CreateEvent(NULL, FALSE, FALSE, NULL)) == NULL) { + printf("CreateEvent fails err = %ld\n", GetLastError()); + return 0; } opterr = 0; @@ -366,21 +366,21 @@ int main(int argc, char* argv[]) if (!seen_driver) { usage (stderr); - //exit (1); + //exit (1); return 0; } drivers = jack_drivers_load (drivers); if (!drivers) { fprintf (stderr, "jackdmp: no drivers found; exiting\n"); - //exit (1); + //exit (1); return 0; } driver_desc = jack_find_driver_descriptor (drivers, driver_name); if (!driver_desc) { fprintf (stderr, "jackdmp: unknown driver '%s'\n", driver_name); - //exit (1); + //exit (1); return 0; } @@ -405,7 +405,7 @@ int main(int argc, char* argv[]) if (jack_parse_driver_params (driver_desc, driver_nargs, driver_args, &driver_params)) { - // exit (0); + // exit (0); return 0; } @@ -418,15 +418,15 @@ int main(int argc, char* argv[]) switch (rc) { case EEXIST: fprintf (stderr, "`%s' server already active\n", server_name); - //exit (1); + //exit (1); return 0; case ENOSPC: fprintf (stderr, "too many servers already active\n"); - //exit (2); + //exit (2); return 0; case ENOMEM: fprintf (stderr, "no access to shm registry\n"); - //exit (3); + //exit (3); return 0; default: if (xverbose) @@ -448,38 +448,38 @@ int main(int argc, char* argv[]) printf("Cannot start server... exit\n"); JackDelete(); return 0; - } - - /* - if( SetConsoleCtrlHandler( (PHANDLER_ROUTINE) CtrlHandler, TRUE ) ) - { - printf( "\nThe Control Handler is installed.\n" ); - } else { - printf( "\nERROR: Could not set control handler"); - } - */ - - - (void) signal(SIGINT, intrpt); - (void) signal(SIGABRT, intrpt); - (void) signal(SIGTERM, intrpt); - - if ((res = WaitForSingleObject(waitEvent, INFINITE)) != WAIT_OBJECT_0) { - printf("WaitForSingleObject fails err = %ld\n", GetLastError()); - } + } + + /* + if( SetConsoleCtrlHandler( (PHANDLER_ROUTINE) CtrlHandler, TRUE ) ) + { + printf( "\nThe Control Handler is installed.\n" ); + } else { + printf( "\nERROR: Could not set control handler"); + } + */ + + + (void) signal(SIGINT, intrpt); + (void) signal(SIGABRT, intrpt); + (void) signal(SIGTERM, intrpt); + + if ((res = WaitForSingleObject(waitEvent, INFINITE)) != WAIT_OBJECT_0) { + printf("WaitForSingleObject fails err = %ld\n", GetLastError()); + } /* printf("Type 'q' to quit\n"); - while ((c = getchar()) != 'q') {} - */ + while ((c = getchar()) != 'q') {} + */ JackStop(); jack_cleanup_shm(); // jack_cleanup_files(server_name); - jack_unregister_server(server_name); - + jack_unregister_server(server_name); + CloseHandle(waitEvent); return 1; }