--- liblscp/trunk/examples/example_server.c 2004/07/07 12:03:54 186 +++ liblscp/trunk/examples/example_server.c 2004/07/07 23:41:07 187 @@ -331,8 +331,13 @@ else if (lscp_parser_test2(&tok, "ADD", "CHANNEL")) { // Adding a new sampler channel: // ADD CHANNEL - sprintf(szTemp, "OK[%d]", iSamplerChannel++); - pszResult = szTemp; + if (iSamplerChannel < 16) { + sprintf(szTemp, "OK[%d]", iSamplerChannel++); + pszResult = szTemp; + } else { + iSamplerChannel = 0; + ret = LSCP_FAILED; + } } else if (lscp_parser_test2(&tok, "REMOVE", "CHANNEL")) { // Removing a sampler channel: @@ -350,14 +355,24 @@ if (lscp_parser_test(&tok, "AUDIO_OUTPUT_DEVICE")) { // Creating an audio output device. // CREATE AUDIO_OUTPUT_DEVICE [] - sprintf(szTemp, "OK[%d]", iAudioDevice++); - pszResult = szTemp; + if (iAudioDevice < 8) { + sprintf(szTemp, "OK[%d]", iAudioDevice++); + pszResult = szTemp; + } else { + iAudioDevice = 0; + ret = LSCP_FAILED; + } } else if (lscp_parser_test(&tok, "MIDI_INPUT_DEVICE")) { // Creating an MIDI input device. // CREATE MIDI_INPUT_DEVICE [] - sprintf(szTemp, "OK[%d]", iMidiDevice++); - pszResult = szTemp; + if (iMidiDevice < 8) { + sprintf(szTemp, "OK[%d]", iMidiDevice++); + pszResult = szTemp; + } else { + iMidiDevice = 0; + ret = LSCP_FAILED; + } } else ret = LSCP_FAILED; }