----- "Julien Claassen" <julien@xxxxxxxx> wrote: > Hello Cedric! > I just changed it to int volatile done = 0 and added some debugging > output. > It jumps into the connecting branch (if(connect) ), then there's > the > expression: > if (jack_connect(client, jack_port_name(src_port),... > There it fails (i.e., it doesn't execute the following goto exit. > Instead, > it executed my prepare else and then hung around the while-loop > forever. Well, > I didn't wait that long. :-) > So any thoughts on that? > Warmly yours > Julien Julien, add the lines: /* tell the JACK server that we are ready to roll */ if (jack_activate (client)) { fprintf (stderr, "cannot activate client"); goto exit; } just before the lines: /* connect the ports. Note: you can't do this before the client is activated (this may change in the future). */ if (connecting) { and add: jack_deactivate (client); just after the lines: // Wait for connection/disconnection to be effective while(!done) { #ifdef WIN32 Sleep(10); #else usleep(10000); #endif } that does the trick for me. You should keep the "volatile" stuff. Without it the program may loop forever if compiled with gcc and some optimization. Note: it is normal that it doesn't jump to exit. Go read the sources of jack-1.9.6, it's clearer. It jumps to exit in case of error. It should do the while(!done) if things are alright. _______________________________________________ Linux-audio-user mailing list Linux-audio-user@xxxxxxxxxxxxxxxxxxxx http://lists.linuxaudio.org/listinfo/linux-audio-user