diff --git a/src/common/backend/jack_backend.c b/src/common/backend/jack_backend.c index 86eb224..286d17a 100644 --- a/src/common/backend/jack_backend.c +++ b/src/common/backend/jack_backend.c @@ -44,7 +44,7 @@ static int jack_start(struct jack_backend_t* jack_backend) int ret = 0; size_t port; char port_name[32]; - char port_name_template[9]; + char port_name_template[32] = { 0 }; char const** ports; volatile size_t port_id; volatile size_t pports = 0; @@ -57,12 +57,12 @@ static int jack_start(struct jack_backend_t* jack_backend) case AUDIO_IN: if (jack_backend->autoconnect == CARD) { - strcpy(port_name_template, "playback_%u"); + memcpy(port_name_template, "playback_%u", sizeof(port_name_template)-1); JackFlags = JackPortIsInput + JackPortIsPhysical; } else { - strcpy(port_name_template, "input_%u"); + memcpy(port_name_template, "input_%u", sizeof(port_name_template)-1); JackFlags = JackPortIsInput; } @@ -81,12 +81,12 @@ static int jack_start(struct jack_backend_t* jack_backend) default: // AUDIO_OUT: if (jack_backend->autoconnect == CARD) { - strcpy(port_name_template, "capture_%u"); + memcpy(port_name_template, "capture_%u", sizeof(port_name_template)-1); JackFlags = JackPortIsOutput + JackPortIsPhysical; } else { - strcpy(port_name_template, "output_%u"); + memcpy(port_name_template, "output_%u", sizeof(port_name_template)-1); JackFlags = JackPortIsOutput; }