| @@ -795,9 +795,7 @@ OSC_HANDLER( add ) | |||||
| } | } | ||||
| else | else | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/reply", path, | |||||
| ERR_OK, | |||||
| "Launched." ); | |||||
| osc_server->send( lo_message_get_source( msg ), "/reply", path, "Launched." ); | |||||
| } | } | ||||
| return 0; | return 0; | ||||
| @@ -1353,9 +1351,12 @@ load_session_file ( const char * path ) | |||||
| OSC_HANDLER( save ) | OSC_HANDLER( save ) | ||||
| { | { | ||||
| lo_address sender_addr; | |||||
| sender_addr = lo_address_new_from_url( lo_address_get_url( lo_message_get_source( msg ) )); | |||||
| if ( pending_operation != COMMAND_NONE ) | if ( pending_operation != COMMAND_NONE ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_OPERATION_PENDING, | ERR_OPERATION_PENDING, | ||||
| "An operation pending." ); | "An operation pending." ); | ||||
| return 0; | return 0; | ||||
| @@ -1363,7 +1364,7 @@ OSC_HANDLER( save ) | |||||
| if ( ! session_path ) | if ( ! session_path ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_NO_SESSION_OPEN, | ERR_NO_SESSION_OPEN, | ||||
| "No session to save."); | "No session to save."); | ||||
| @@ -1374,7 +1375,7 @@ OSC_HANDLER( save ) | |||||
| MESSAGE( "Done." ); | MESSAGE( "Done." ); | ||||
| osc_server->send( lo_message_get_source( msg ), "/reply", path, "Saved." ); | |||||
| osc_server->send( sender_addr, "/reply", path, "Saved." ); | |||||
| done: | done: | ||||
| @@ -1385,9 +1386,12 @@ done: | |||||
| OSC_HANDLER( duplicate ) | OSC_HANDLER( duplicate ) | ||||
| { | { | ||||
| lo_address sender_addr; | |||||
| sender_addr = lo_address_new_from_url( lo_address_get_url( lo_message_get_source( msg ) )); | |||||
| if ( pending_operation != COMMAND_NONE ) | if ( pending_operation != COMMAND_NONE ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_OPERATION_PENDING, | ERR_OPERATION_PENDING, | ||||
| "An operation pending." ); | "An operation pending." ); | ||||
| return 0; | return 0; | ||||
| @@ -1397,7 +1401,7 @@ OSC_HANDLER( duplicate ) | |||||
| if ( ! session_path ) | if ( ! session_path ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_NO_SESSION_OPEN, | ERR_NO_SESSION_OPEN, | ||||
| "No session to duplicate."); | "No session to duplicate."); | ||||
| goto done; | goto done; | ||||
| @@ -1405,7 +1409,7 @@ OSC_HANDLER( duplicate ) | |||||
| if ( ! path_is_valid( &argv[0]->s ) ) | if ( ! path_is_valid( &argv[0]->s ) ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_CREATE_FAILED, | ERR_CREATE_FAILED, | ||||
| "Invalid session name." ); | "Invalid session name." ); | ||||
| @@ -1416,7 +1420,7 @@ OSC_HANDLER( duplicate ) | |||||
| if ( clients_have_errors() ) | if ( clients_have_errors() ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_GENERAL_ERROR, | ERR_GENERAL_ERROR, | ||||
| "Some clients could not save" ); | "Some clients could not save" ); | ||||
| @@ -1446,13 +1450,13 @@ OSC_HANDLER( duplicate ) | |||||
| if ( !load_session_file( spath ) ) | if ( !load_session_file( spath ) ) | ||||
| { | { | ||||
| MESSAGE( "Loaded" ); | MESSAGE( "Loaded" ); | ||||
| osc_server->send( lo_message_get_source( msg ), "/reply", path, | |||||
| osc_server->send( sender_addr, "/reply", path, | |||||
| "Loaded." ); | "Loaded." ); | ||||
| } | } | ||||
| else | else | ||||
| { | { | ||||
| MESSAGE( "Failed" ); | MESSAGE( "Failed" ); | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_NO_SUCH_FILE, | ERR_NO_SUCH_FILE, | ||||
| "No such file." ); | "No such file." ); | ||||
| free(spath); | free(spath); | ||||
| @@ -1463,7 +1467,7 @@ OSC_HANDLER( duplicate ) | |||||
| MESSAGE( "Done" ); | MESSAGE( "Done" ); | ||||
| osc_server->send( lo_message_get_source( msg ), "/reply", path, "Duplicated." ); | |||||
| osc_server->send( sender_addr, "/reply", path, "Duplicated." ); | |||||
| done: | done: | ||||
| @@ -1474,9 +1478,12 @@ done: | |||||
| OSC_HANDLER( new ) | OSC_HANDLER( new ) | ||||
| { | { | ||||
| lo_address sender_addr; | |||||
| sender_addr = lo_address_new_from_url( lo_address_get_url( lo_message_get_source( msg ) )); | |||||
| if ( pending_operation != COMMAND_NONE ) | if ( pending_operation != COMMAND_NONE ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_OPERATION_PENDING, | ERR_OPERATION_PENDING, | ||||
| "An operation pending." ); | "An operation pending." ); | ||||
| return 0; | return 0; | ||||
| @@ -1486,7 +1493,7 @@ OSC_HANDLER( new ) | |||||
| if ( ! path_is_valid( &argv[0]->s ) ) | if ( ! path_is_valid( &argv[0]->s ) ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_CREATE_FAILED, | ERR_CREATE_FAILED, | ||||
| "Invalid session name." ); | "Invalid session name." ); | ||||
| @@ -1509,7 +1516,7 @@ OSC_HANDLER( new ) | |||||
| if ( mkpath( spath, true ) ) | if ( mkpath( spath, true ) ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_CREATE_FAILED, | ERR_CREATE_FAILED, | ||||
| "Could not create the session directory" ); | "Could not create the session directory" ); | ||||
| @@ -1524,7 +1531,7 @@ OSC_HANDLER( new ) | |||||
| set_name( session_path ); | set_name( session_path ); | ||||
| osc_server->send( lo_message_get_source( msg ), "/reply", path, "Created." ); | |||||
| osc_server->send( sender_addr, "/reply", path, "Created." ); | |||||
| if ( gui_is_active ) | if ( gui_is_active ) | ||||
| { | { | ||||
| @@ -1537,8 +1544,7 @@ OSC_HANDLER( new ) | |||||
| free( spath ); | free( spath ); | ||||
| osc_server->send( lo_message_get_source( msg ), "/reply", path, | |||||
| "Session created" ); | |||||
| osc_server->send( sender_addr, "/reply", path, "Session created" ); | |||||
| pending_operation = COMMAND_NONE; | pending_operation = COMMAND_NONE; | ||||
| @@ -1591,11 +1597,14 @@ OSC_HANDLER( list ) | |||||
| OSC_HANDLER( open ) | OSC_HANDLER( open ) | ||||
| { | { | ||||
| lo_address sender_addr; | |||||
| sender_addr = lo_address_new_from_url( lo_address_get_url( lo_message_get_source( msg ) )); | |||||
| GUIMSG( "Opening session %s", &argv[0]->s ); | GUIMSG( "Opening session %s", &argv[0]->s ); | ||||
| if ( pending_operation != COMMAND_NONE ) | if ( pending_operation != COMMAND_NONE ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_OPERATION_PENDING, | ERR_OPERATION_PENDING, | ||||
| "An operation pending." ); | "An operation pending." ); | ||||
| return 0; | return 0; | ||||
| @@ -1603,7 +1612,6 @@ OSC_HANDLER( open ) | |||||
| pending_operation = COMMAND_OPEN; | pending_operation = COMMAND_OPEN; | ||||
| if ( session_path ) | if ( session_path ) | ||||
| { | { | ||||
| @@ -1611,7 +1619,7 @@ OSC_HANDLER( open ) | |||||
| if ( clients_have_errors() ) | if ( clients_have_errors() ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_GENERAL_ERROR, | ERR_GENERAL_ERROR, | ||||
| "Some clients could not save" ); | "Some clients could not save" ); | ||||
| @@ -1633,7 +1641,7 @@ OSC_HANDLER( open ) | |||||
| if ( ! err ) | if ( ! err ) | ||||
| { | { | ||||
| MESSAGE( "Loaded" ); | MESSAGE( "Loaded" ); | ||||
| osc_server->send( lo_message_get_source( msg ), "/reply", path, | |||||
| osc_server->send( sender_addr, "/reply", path, | |||||
| "Loaded." ); | "Loaded." ); | ||||
| } | } | ||||
| else | else | ||||
| @@ -1656,7 +1664,7 @@ OSC_HANDLER( open ) | |||||
| } | } | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| err, | err, | ||||
| m ); | m ); | ||||
| } | } | ||||
| @@ -1682,20 +1690,23 @@ OSC_HANDLER( quit ) | |||||
| OSC_HANDLER( abort ) | OSC_HANDLER( abort ) | ||||
| { | { | ||||
| if ( pending_operation != COMMAND_NONE ) | |||||
| { | |||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| ERR_OPERATION_PENDING, | |||||
| "An operation pending." ); | |||||
| return 0; | |||||
| } | |||||
| lo_address sender_addr; | |||||
| sender_addr = lo_address_new_from_url( lo_address_get_url( lo_message_get_source( msg ) )); | |||||
| pending_operation = COMMAND_CLOSE; | |||||
| if ( pending_operation != COMMAND_NONE ) | |||||
| { | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_OPERATION_PENDING, | |||||
| "An operation pending." ); | |||||
| return 0; | |||||
| } | |||||
| pending_operation = COMMAND_CLOSE; | |||||
| if ( ! session_path ) | if ( ! session_path ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_NO_SESSION_OPEN, | ERR_NO_SESSION_OPEN, | ||||
| "No session to abort." ); | "No session to abort." ); | ||||
| @@ -1706,7 +1717,7 @@ OSC_HANDLER( abort ) | |||||
| close_session(); | close_session(); | ||||
| osc_server->send( lo_message_get_source( msg ), "/reply", path, | |||||
| osc_server->send( sender_addr, "/reply", path, | |||||
| "Aborted." ); | "Aborted." ); | ||||
| MESSAGE( "Done" ); | MESSAGE( "Done" ); | ||||
| @@ -1720,9 +1731,12 @@ done: | |||||
| OSC_HANDLER( close ) | OSC_HANDLER( close ) | ||||
| { | { | ||||
| lo_address sender_addr; | |||||
| sender_addr = lo_address_new_from_url( lo_address_get_url( lo_message_get_source( msg ) )); | |||||
| if ( pending_operation != COMMAND_NONE ) | if ( pending_operation != COMMAND_NONE ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_OPERATION_PENDING, | ERR_OPERATION_PENDING, | ||||
| "An operation pending." ); | "An operation pending." ); | ||||
| return 0; | return 0; | ||||
| @@ -1732,7 +1746,7 @@ OSC_HANDLER( close ) | |||||
| if ( ! session_path ) | if ( ! session_path ) | ||||
| { | { | ||||
| osc_server->send( lo_message_get_source( msg ), "/error", path, | |||||
| osc_server->send( sender_addr, "/error", path, | |||||
| ERR_NO_SESSION_OPEN, | ERR_NO_SESSION_OPEN, | ||||
| "No session to close." ); | "No session to close." ); | ||||
| @@ -1744,8 +1758,7 @@ OSC_HANDLER( close ) | |||||
| close_session(); | close_session(); | ||||
| osc_server->send( lo_message_get_source( msg ), "/reply", path, | |||||
| "Closed." ); | |||||
| osc_server->send( sender_addr, "/reply", path, "Closed." ); | |||||
| MESSAGE( "Done" ); | MESSAGE( "Done" ); | ||||