|
|
|
@@ -141,13 +141,13 @@ static char jack_shm_server_prefix[JACK_SERVER_NAME_SIZE] = ""; |
|
|
|
|
|
|
|
static int semid = -1; |
|
|
|
|
|
|
|
#ifdef WIN32
|
|
|
|
|
|
|
|
#include <psapi.h>
|
|
|
|
#ifdef WIN32 |
|
|
|
|
|
|
|
#include <psapi.h> |
|
|
|
#include <lmcons.h> |
|
|
|
|
|
|
|
static BOOL check_process_running(DWORD process_id) |
|
|
|
{
|
|
|
|
{ |
|
|
|
DWORD aProcesses[2048], cbNeeded, cProcesses; |
|
|
|
unsigned int i; |
|
|
|
|
|
|
|
@@ -159,7 +159,7 @@ static BOOL check_process_running(DWORD process_id) |
|
|
|
// Calculate how many process identifiers were returned. |
|
|
|
cProcesses = cbNeeded / sizeof(DWORD); |
|
|
|
|
|
|
|
for (i = 0; i < cProcesses; i++) {
|
|
|
|
for (i = 0; i < cProcesses; i++) { |
|
|
|
if (aProcesses[i] == process_id) { |
|
|
|
// Process process_id is running... |
|
|
|
return TRUE; |
|
|
|
@@ -313,18 +313,17 @@ jack_shm_validate_registry () |
|
|
|
*/ |
|
|
|
static void |
|
|
|
jack_set_server_prefix (const char *server_name) |
|
|
|
{
|
|
|
|
#ifdef WIN32
|
|
|
|
char buffer[UNLEN+1]={0};
|
|
|
|
DWORD len = UNLEN+1;
|
|
|
|
GetUserName(buffer, &len);
|
|
|
|
{ |
|
|
|
#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
|
|
|
|
"jack-%s:%s:", buffer, server_name); |
|
|
|
#else |
|
|
|
snprintf (jack_shm_server_prefix, sizeof (jack_shm_server_prefix), |
|
|
|
"jack-%d:%s:", GetUID(), server_name);
|
|
|
|
#endif |
|
|
|
|
|
|
|
"jack-%d:%s:", GetUID(), server_name); |
|
|
|
#endif |
|
|
|
} |
|
|
|
|
|
|
|
/* gain server addressability to shared memory registration segment |
|
|
|
@@ -502,7 +501,9 @@ jack_register_server (const char *server_name, int new_registry) |
|
|
|
/* See if server_name already registered. Since server names |
|
|
|
* are per-user, we register the unique server prefix string. |
|
|
|
*/ |
|
|
|
for (i = 0; i < MAX_SERVERS; i++) {
|
|
|
|
for (i = 0; i < MAX_SERVERS; i++) { |
|
|
|
|
|
|
|
printf("server name %s %s\n", jack_shm_header->server[i].name, jack_shm_server_prefix); |
|
|
|
|
|
|
|
if (strncmp (jack_shm_header->server[i].name, |
|
|
|
jack_shm_server_prefix, |
|
|
|
@@ -547,7 +548,9 @@ jack_register_server (const char *server_name, int new_registry) |
|
|
|
jack_shm_header->server[i].pid = GetPID(); |
|
|
|
strncpy (jack_shm_header->server[i].name, |
|
|
|
jack_shm_server_prefix, |
|
|
|
JACK_SERVER_NAME_SIZE);
|
|
|
|
JACK_SERVER_NAME_SIZE); |
|
|
|
|
|
|
|
printf("new server name %s \n", jack_shm_header->server[i].name); |
|
|
|
|
|
|
|
unlock: |
|
|
|
jack_shm_unlock_registry (); |
|
|
|
@@ -1288,3 +1291,4 @@ jack_attach_shm (jack_shm_info_t* si) |
|
|
|
} |
|
|
|
|
|
|
|
#endif /* !USE_POSIX_SHM */ |
|
|
|
|