NSM: Mutli-server fixes.

This commit is contained in:
Jonathan Moore Liles 2012-02-23 04:10:55 -08:00
parent 7cfa1ec38a
commit f15523ea9e
1 changed files with 28 additions and 13 deletions

View File

@ -1477,9 +1477,17 @@ OSC_HANDLER( broadcast )
* propagated to another NSMD instance */
if ( gui_is_active )
{
new_args.push_front( OSC::OSC_String( to_path ) );
osc_server->send( gui_addr, path, new_args );
char *u1 = lo_address_get_url( gui_addr );
if ( strcmp( u1, sender_url ) )
{
new_args.push_front( OSC::OSC_String( to_path ) );
osc_server->send( gui_addr, path, new_args );
}
free(u1);
}
free( sender_url );
@ -1641,13 +1649,16 @@ OSC_HANDLER( resume )
{
Client *c = get_client_by_id( &client, &argv[0]->s );
if ( c->pid == 0 &&
! c->active )
/* FIXME: return error if no such client? */
if ( c )
{
if ( ! launch( c->executable_path, c->client_id ) )
if ( c->pid == 0 &&
! c->active )
{
if ( ! launch( c->executable_path, c->client_id ) )
{
}
}
}
@ -1659,9 +1670,13 @@ OSC_HANDLER( client_save )
{
Client *c = get_client_by_id( &client, &argv[0]->s );
if ( c->active )
/* FIXME: return error if no such client? */
if ( c )
{
command_client_to_save( c );
if ( c->active )
{
command_client_to_save( c );
}
}
return 0;