git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@4557 0c269be4-1314-0410-8aa9-9f06e86f4224tags/1.9.8
@@ -141,28 +141,31 @@ static char jack_shm_server_prefix[JACK_SERVER_NAME_SIZE] = ""; | |||||
static int semid = -1; | static int semid = -1; | ||||
#ifdef WIN32 | |||||
static bool check_process_running(DWORD process_id) | |||||
{ | |||||
DWORD aProcesses [2048], cbNeeded, cProcesses; | |||||
#ifdef WIN32 | |||||
#include <psapi.h> | |||||
#include <lmcons.h> | |||||
static BOOL check_process_running(DWORD process_id) | |||||
{ | |||||
DWORD aProcesses[2048], cbNeeded, cProcesses; | |||||
unsigned int i; | unsigned int i; | ||||
// Enumerate all processes | // Enumerate all processes | ||||
if (!EnumProcesses(aProcesses, sizeof(aProcesses), &cbNeeded)) { | if (!EnumProcesses(aProcesses, sizeof(aProcesses), &cbNeeded)) { | ||||
return false; | |||||
return FALSE; | |||||
} | } | ||||
// Calculate how many process identifiers were returned. | // Calculate how many process identifiers were returned. | ||||
cProcesses = cbNeeded / sizeof(DWORD); | cProcesses = cbNeeded / sizeof(DWORD); | ||||
for (i = 0; i < cProcesses; i++) { | |||||
if (aProcesses [i] == dwProcessID) { | |||||
for (i = 0; i < cProcesses; i++) { | |||||
if (aProcesses[i] == process_id) { | |||||
// Process process_id is running... | // Process process_id is running... | ||||
return true; | |||||
return TRUE; | |||||
} | } | ||||
} | } | ||||
return false; | |||||
return FALSE; | |||||
} | } | ||||
static int | static int | ||||
@@ -310,9 +313,18 @@ jack_shm_validate_registry () | |||||
*/ | */ | ||||
static void | static void | ||||
jack_set_server_prefix (const char *server_name) | jack_set_server_prefix (const char *server_name) | ||||
{ | |||||
snprintf (jack_shm_server_prefix, sizeof (jack_shm_server_prefix), | |||||
"jack-%d:%s:", GetUID(), server_name); | |||||
{ | |||||
#ifdef WIN32 | |||||
char buffer[UNLEN+1]={0}; | |||||
DWORD len = UNLEN+1; | |||||
GetUserName(buffer, &len); | |||||
snprintf (jack_shm_server_prefix, sizeof (jack_shm_server_prefix), | |||||
"jack-%s:%s:", buffer, server_name); | |||||
#else | |||||
snprintf (jack_shm_server_prefix, sizeof (jack_shm_server_prefix), | |||||
"jack-%d:%s:", GetUID(), server_name); | |||||
#endif | |||||
} | } | ||||
/* gain server addressability to shared memory registration segment | /* gain server addressability to shared memory registration segment | ||||
@@ -490,7 +502,7 @@ jack_register_server (const char *server_name, int new_registry) | |||||
/* See if server_name already registered. Since server names | /* See if server_name already registered. Since server names | ||||
* are per-user, we register the unique server prefix string. | * are per-user, we register the unique server prefix string. | ||||
*/ | */ | ||||
for (i = 0; i < MAX_SERVERS; i++) { | |||||
for (i = 0; i < MAX_SERVERS; i++) { | |||||
if (strncmp (jack_shm_header->server[i].name, | if (strncmp (jack_shm_header->server[i].name, | ||||
jack_shm_server_prefix, | jack_shm_server_prefix, | ||||
@@ -535,7 +547,7 @@ jack_register_server (const char *server_name, int new_registry) | |||||
jack_shm_header->server[i].pid = GetPID(); | jack_shm_header->server[i].pid = GetPID(); | ||||
strncpy (jack_shm_header->server[i].name, | strncpy (jack_shm_header->server[i].name, | ||||
jack_shm_server_prefix, | jack_shm_server_prefix, | ||||
JACK_SERVER_NAME_SIZE); | |||||
JACK_SERVER_NAME_SIZE); | |||||
unlock: | unlock: | ||||
jack_shm_unlock_registry (); | jack_shm_unlock_registry (); | ||||
@@ -599,7 +611,7 @@ jack_cleanup_shm () | |||||
/* see if allocator still exists */ | /* see if allocator still exists */ | ||||
#ifdef WIN32 // steph | #ifdef WIN32 // steph | ||||
jack_info("TODO: kill API not available !!"); | |||||
//jack_info("TODO: kill API not available !!"); | |||||
#else | #else | ||||
if (kill (r->allocator, 0)) { | if (kill (r->allocator, 0)) { | ||||
if (errno == ESRCH) { | if (errno == ESRCH) { | ||||
@@ -1,14 +1,14 @@ | |||||
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?> | <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> | ||||
<CodeBlocks_workspace_file> | <CodeBlocks_workspace_file> | ||||
<Workspace title="jack"> | <Workspace title="jack"> | ||||
<Project filename="libjackserver.cbp" active="1" /> | |||||
<Project filename="libjackserver.cbp" /> | |||||
<Project filename="jack_portaudio.cbp" /> | <Project filename="jack_portaudio.cbp" /> | ||||
<Project filename="jack_netdriver.cbp" /> | <Project filename="jack_netdriver.cbp" /> | ||||
<Project filename="jack_netonedriver.cbp" /> | <Project filename="jack_netonedriver.cbp" /> | ||||
<Project filename="jack_dummy.cbp" /> | <Project filename="jack_dummy.cbp" /> | ||||
<Project filename="jack_netmanager.cbp" /> | <Project filename="jack_netmanager.cbp" /> | ||||
<Project filename="jack_audioadapter.cbp" /> | <Project filename="jack_audioadapter.cbp" /> | ||||
<Project filename="libjack.cbp" /> | |||||
<Project filename="libjack.cbp" active="1" /> | |||||
<Project filename="jack_load.cbp" /> | <Project filename="jack_load.cbp" /> | ||||
<Project filename="jack_unload.cbp" /> | <Project filename="jack_unload.cbp" /> | ||||
<Project filename="jack_lsp.cbp" /> | <Project filename="jack_lsp.cbp" /> | ||||
@@ -25,7 +25,7 @@ | |||||
<Add option="-DREGEX_MALLOC" /> | <Add option="-DREGEX_MALLOC" /> | ||||
<Add option="-DSTDC_HEADERS" /> | <Add option="-DSTDC_HEADERS" /> | ||||
<Add option="-D__SMP__" /> | <Add option="-D__SMP__" /> | ||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DHAVE_CONFIG_H" /> | <Add option="-DHAVE_CONFIG_H" /> | ||||
<Add directory="." /> | <Add directory="." /> | ||||
<Add directory="..\windows" /> | <Add directory="..\windows" /> | ||||
@@ -47,6 +47,7 @@ | |||||
<Add library="uuid" /> | <Add library="uuid" /> | ||||
<Add library="odbc32" /> | <Add library="odbc32" /> | ||||
<Add library="odbccp32" /> | <Add library="odbccp32" /> | ||||
<Add library="psapi" /> | |||||
</Linker> | </Linker> | ||||
</Target> | </Target> | ||||
<Target title="Win32 Debug 64bits"> | <Target title="Win32 Debug 64bits"> | ||||
@@ -68,7 +69,7 @@ | |||||
<Add option="-DREGEX_MALLOC" /> | <Add option="-DREGEX_MALLOC" /> | ||||
<Add option="-DSTDC_HEADERS" /> | <Add option="-DSTDC_HEADERS" /> | ||||
<Add option="-D__SMP__" /> | <Add option="-D__SMP__" /> | ||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DHAVE_CONFIG_H" /> | <Add option="-DHAVE_CONFIG_H" /> | ||||
<Add directory="." /> | <Add directory="." /> | ||||
<Add directory="..\windows" /> | <Add directory="..\windows" /> | ||||
@@ -90,6 +91,7 @@ | |||||
<Add library="uuid" /> | <Add library="uuid" /> | ||||
<Add library="odbc32" /> | <Add library="odbc32" /> | ||||
<Add library="odbccp32" /> | <Add library="odbccp32" /> | ||||
<Add library="psapi" /> | |||||
</Linker> | </Linker> | ||||
</Target> | </Target> | ||||
<Target title="Win32 Profiling 64bits"> | <Target title="Win32 Profiling 64bits"> | ||||
@@ -111,7 +113,7 @@ | |||||
<Add option="-DREGEX_MALLOC" /> | <Add option="-DREGEX_MALLOC" /> | ||||
<Add option="-DSTDC_HEADERS" /> | <Add option="-DSTDC_HEADERS" /> | ||||
<Add option="-D__SMP__" /> | <Add option="-D__SMP__" /> | ||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_MONITOR" /> | <Add option="-DJACK_MONITOR" /> | ||||
<Add option="-DHAVE_CONFIG_H" /> | <Add option="-DHAVE_CONFIG_H" /> | ||||
<Add directory="." /> | <Add directory="." /> | ||||
@@ -134,6 +136,7 @@ | |||||
<Add library="uuid" /> | <Add library="uuid" /> | ||||
<Add library="odbc32" /> | <Add library="odbc32" /> | ||||
<Add library="odbccp32" /> | <Add library="odbccp32" /> | ||||
<Add library="psapi" /> | |||||
</Linker> | </Linker> | ||||
</Target> | </Target> | ||||
<Target title="Win32 Release 32bits"> | <Target title="Win32 Release 32bits"> | ||||
@@ -156,7 +159,7 @@ | |||||
<Add option="-DREGEX_MALLOC" /> | <Add option="-DREGEX_MALLOC" /> | ||||
<Add option="-DSTDC_HEADERS" /> | <Add option="-DSTDC_HEADERS" /> | ||||
<Add option="-D__SMP__" /> | <Add option="-D__SMP__" /> | ||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DHAVE_CONFIG_H" /> | <Add option="-DHAVE_CONFIG_H" /> | ||||
<Add directory="." /> | <Add directory="." /> | ||||
<Add directory="..\windows" /> | <Add directory="..\windows" /> | ||||
@@ -179,6 +182,7 @@ | |||||
<Add library="uuid" /> | <Add library="uuid" /> | ||||
<Add library="odbc32" /> | <Add library="odbc32" /> | ||||
<Add library="odbccp32" /> | <Add library="odbccp32" /> | ||||
<Add library="psapi" /> | |||||
</Linker> | </Linker> | ||||
<ExtraCommands> | <ExtraCommands> | ||||
<Add before="windres -F pe-i386 -O coff -o Release/libjack.res libjack.rc" /> | <Add before="windres -F pe-i386 -O coff -o Release/libjack.res libjack.rc" /> | ||||
@@ -204,7 +208,7 @@ | |||||
<Add option="-DREGEX_MALLOC" /> | <Add option="-DREGEX_MALLOC" /> | ||||
<Add option="-DSTDC_HEADERS" /> | <Add option="-DSTDC_HEADERS" /> | ||||
<Add option="-D__SMP__" /> | <Add option="-D__SMP__" /> | ||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DHAVE_CONFIG_H" /> | <Add option="-DHAVE_CONFIG_H" /> | ||||
<Add directory="." /> | <Add directory="." /> | ||||
<Add directory="..\windows" /> | <Add directory="..\windows" /> | ||||
@@ -227,6 +231,7 @@ | |||||
<Add library="uuid" /> | <Add library="uuid" /> | ||||
<Add library="odbc32" /> | <Add library="odbc32" /> | ||||
<Add library="odbccp32" /> | <Add library="odbccp32" /> | ||||
<Add library="psapi" /> | |||||
</Linker> | </Linker> | ||||
<ExtraCommands> | <ExtraCommands> | ||||
<Add before="windres -F pe-i386 -O coff -o Debug/libjack.res libjack.rc" /> | <Add before="windres -F pe-i386 -O coff -o Debug/libjack.res libjack.rc" /> | ||||
@@ -252,7 +257,7 @@ | |||||
<Add option="-DREGEX_MALLOC" /> | <Add option="-DREGEX_MALLOC" /> | ||||
<Add option="-DSTDC_HEADERS" /> | <Add option="-DSTDC_HEADERS" /> | ||||
<Add option="-D__SMP__" /> | <Add option="-D__SMP__" /> | ||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_MONITOR" /> | <Add option="-DJACK_MONITOR" /> | ||||
<Add option="-DHAVE_CONFIG_H" /> | <Add option="-DHAVE_CONFIG_H" /> | ||||
<Add directory="." /> | <Add directory="." /> | ||||
@@ -276,6 +281,7 @@ | |||||
<Add library="uuid" /> | <Add library="uuid" /> | ||||
<Add library="odbc32" /> | <Add library="odbc32" /> | ||||
<Add library="odbccp32" /> | <Add library="odbccp32" /> | ||||
<Add library="psapi" /> | |||||
</Linker> | </Linker> | ||||
<ExtraCommands> | <ExtraCommands> | ||||
<Add before="windres -F pe-i386 -O coff -o Release/libjack.res libjack.rc" /> | <Add before="windres -F pe-i386 -O coff -o Release/libjack.res libjack.rc" /> | ||||
@@ -26,8 +26,8 @@ | |||||
<Add option="-DSTDC_HEADERS" /> | <Add option="-DSTDC_HEADERS" /> | ||||
<Add option="-DSERVER_SIDE" /> | <Add option="-DSERVER_SIDE" /> | ||||
<Add option="-D__SMP__" /> | <Add option="-D__SMP__" /> | ||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DHAVE_CONFIG_H" /> | |||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DHAVE_CONFIG_H" /> | |||||
<Add directory="." /> | <Add directory="." /> | ||||
<Add directory="..\windows" /> | <Add directory="..\windows" /> | ||||
<Add directory="..\common\jack" /> | <Add directory="..\common\jack" /> | ||||
@@ -36,6 +36,7 @@ | |||||
<Add directory="tre-0.8.0\lib" /> | <Add directory="tre-0.8.0\lib" /> | ||||
</Compiler> | </Compiler> | ||||
<Linker> | <Linker> | ||||
<Add library="psapi" /> | |||||
<Add directory="Release\bin64" /> | <Add directory="Release\bin64" /> | ||||
</Linker> | </Linker> | ||||
</Target> | </Target> | ||||
@@ -59,7 +60,7 @@ | |||||
<Add option="-DSTDC_HEADERS" /> | <Add option="-DSTDC_HEADERS" /> | ||||
<Add option="-DSERVER_SIDE" /> | <Add option="-DSERVER_SIDE" /> | ||||
<Add option="-D__SMP__" /> | <Add option="-D__SMP__" /> | ||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DHAVE_CONFIG_H" /> | <Add option="-DHAVE_CONFIG_H" /> | ||||
<Add directory="." /> | <Add directory="." /> | ||||
<Add directory="..\windows" /> | <Add directory="..\windows" /> | ||||
@@ -69,6 +70,7 @@ | |||||
<Add directory="tre-0.8.0\lib" /> | <Add directory="tre-0.8.0\lib" /> | ||||
</Compiler> | </Compiler> | ||||
<Linker> | <Linker> | ||||
<Add library="psapi" /> | |||||
<Add directory="Debug\bin64" /> | <Add directory="Debug\bin64" /> | ||||
</Linker> | </Linker> | ||||
</Target> | </Target> | ||||
@@ -92,7 +94,7 @@ | |||||
<Add option="-DSTDC_HEADERS" /> | <Add option="-DSTDC_HEADERS" /> | ||||
<Add option="-DSERVER_SIDE" /> | <Add option="-DSERVER_SIDE" /> | ||||
<Add option="-D__SMP__" /> | <Add option="-D__SMP__" /> | ||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_MONITOR" /> | <Add option="-DJACK_MONITOR" /> | ||||
<Add option="-DHAVE_CONFIG_H" /> | <Add option="-DHAVE_CONFIG_H" /> | ||||
<Add directory="." /> | <Add directory="." /> | ||||
@@ -103,6 +105,7 @@ | |||||
<Add directory="tre-0.8.0\lib" /> | <Add directory="tre-0.8.0\lib" /> | ||||
</Compiler> | </Compiler> | ||||
<Linker> | <Linker> | ||||
<Add library="psapi" /> | |||||
<Add directory="Release\bin64" /> | <Add directory="Release\bin64" /> | ||||
</Linker> | </Linker> | ||||
</Target> | </Target> | ||||
@@ -127,7 +130,7 @@ | |||||
<Add option="-DSTDC_HEADERS" /> | <Add option="-DSTDC_HEADERS" /> | ||||
<Add option="-DSERVER_SIDE" /> | <Add option="-DSERVER_SIDE" /> | ||||
<Add option="-D__SMP__" /> | <Add option="-D__SMP__" /> | ||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DHAVE_CONFIG_H" /> | <Add option="-DHAVE_CONFIG_H" /> | ||||
<Add directory="." /> | <Add directory="." /> | ||||
<Add directory="..\windows" /> | <Add directory="..\windows" /> | ||||
@@ -138,6 +141,7 @@ | |||||
</Compiler> | </Compiler> | ||||
<Linker> | <Linker> | ||||
<Add option="-m32" /> | <Add option="-m32" /> | ||||
<Add library="psapi" /> | |||||
<Add directory="Release\bin" /> | <Add directory="Release\bin" /> | ||||
</Linker> | </Linker> | ||||
<ExtraCommands> | <ExtraCommands> | ||||
@@ -165,7 +169,7 @@ | |||||
<Add option="-DSTDC_HEADERS" /> | <Add option="-DSTDC_HEADERS" /> | ||||
<Add option="-DSERVER_SIDE" /> | <Add option="-DSERVER_SIDE" /> | ||||
<Add option="-D__SMP__" /> | <Add option="-D__SMP__" /> | ||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DHAVE_CONFIG_H" /> | <Add option="-DHAVE_CONFIG_H" /> | ||||
<Add directory="." /> | <Add directory="." /> | ||||
<Add directory="..\windows" /> | <Add directory="..\windows" /> | ||||
@@ -176,6 +180,7 @@ | |||||
</Compiler> | </Compiler> | ||||
<Linker> | <Linker> | ||||
<Add option="-m32" /> | <Add option="-m32" /> | ||||
<Add library="psapi" /> | |||||
<Add directory="Debug\bin" /> | <Add directory="Debug\bin" /> | ||||
</Linker> | </Linker> | ||||
<ExtraCommands> | <ExtraCommands> | ||||
@@ -203,7 +208,7 @@ | |||||
<Add option="-DSTDC_HEADERS" /> | <Add option="-DSTDC_HEADERS" /> | ||||
<Add option="-DSERVER_SIDE" /> | <Add option="-DSERVER_SIDE" /> | ||||
<Add option="-D__SMP__" /> | <Add option="-D__SMP__" /> | ||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_32_64" /> | |||||
<Add option="-DJACK_MONITOR" /> | <Add option="-DJACK_MONITOR" /> | ||||
<Add option="-DHAVE_CONFIG_H" /> | <Add option="-DHAVE_CONFIG_H" /> | ||||
<Add directory="." /> | <Add directory="." /> | ||||
@@ -215,6 +220,7 @@ | |||||
</Compiler> | </Compiler> | ||||
<Linker> | <Linker> | ||||
<Add option="-m32" /> | <Add option="-m32" /> | ||||
<Add library="psapi" /> | |||||
<Add directory="Release\bin" /> | <Add directory="Release\bin" /> | ||||
</Linker> | </Linker> | ||||
<ExtraCommands> | <ExtraCommands> | ||||
@@ -247,7 +253,6 @@ | |||||
<Unit filename="..\common\JackActivationCount.cpp" /> | <Unit filename="..\common\JackActivationCount.cpp" /> | ||||
<Unit filename="..\common\JackArgParser.cpp" /> | <Unit filename="..\common\JackArgParser.cpp" /> | ||||
<Unit filename="..\common\JackAudioDriver.cpp" /> | <Unit filename="..\common\JackAudioDriver.cpp" /> | ||||
<Unit filename="..\common\JackTimedDriver.cpp" /> | |||||
<Unit filename="..\common\JackAudioPort.cpp" /> | <Unit filename="..\common\JackAudioPort.cpp" /> | ||||
<Unit filename="..\common\JackClient.cpp" /> | <Unit filename="..\common\JackClient.cpp" /> | ||||
<Unit filename="..\common\JackConnectionManager.cpp" /> | <Unit filename="..\common\JackConnectionManager.cpp" /> | ||||
@@ -287,6 +292,7 @@ | |||||
<Unit filename="..\common\JackServerGlobals.cpp" /> | <Unit filename="..\common\JackServerGlobals.cpp" /> | ||||
<Unit filename="..\common\JackShmMem.cpp" /> | <Unit filename="..\common\JackShmMem.cpp" /> | ||||
<Unit filename="..\common\JackThreadedDriver.cpp" /> | <Unit filename="..\common\JackThreadedDriver.cpp" /> | ||||
<Unit filename="..\common\JackTimedDriver.cpp" /> | |||||
<Unit filename="..\common\JackTools.cpp" /> | <Unit filename="..\common\JackTools.cpp" /> | ||||
<Unit filename="..\common\JackTransportEngine.cpp" /> | <Unit filename="..\common\JackTransportEngine.cpp" /> | ||||
<Unit filename="..\common\JackWaitThreadedDriver.cpp" /> | <Unit filename="..\common\JackWaitThreadedDriver.cpp" /> | ||||