gtk_box_pack_end(GTK_BOX(vbox), toggle, FALSE, FALSE, 0);
/* gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), TRUE); */
gtk_signal_connect(GTK_OBJECT(toggle), "toggled",
- GTK_SIGNAL_FUNC(config_set_stereo), (gpointer)stream-1);
+ GTK_SIGNAL_FUNC(config_set_stereo), GINT_TO_POINTER(stream-1));
hbox = gtk_hbox_new(TRUE, 6);
gtk_widget_show(hbox);
if (! name) {
/* probe cards */
- static char cardname[8];
+ static char cardname[16];
/* FIXME: hardcoded max number of cards */
for (card_number = 0; card_number < 8; card_number++) {
sprintf(cardname, "hw:%d", card_number);
if ((pos_after_tilde = strchr(filename, '~')) != NULL) {
pos_after_tilde++;
- strncpy(new_filename, getenv("HOME"), MAX_FILE_NAME_LENGTH);
- strncpy(new_filename + strlen(new_filename), pos_after_tilde, MAX_FILE_NAME_LENGTH - strlen(new_filename));
- new_filename[MAX_FILE_NAME_LENGTH - 1] = '\0';
+ strncpy(new_filename, getenv("HOME"), sizeof(new_filename) - 1);
+ strncpy(new_filename + strlen(new_filename), pos_after_tilde, sizeof(new_filename) - strlen(new_filename) - 1);
+ new_filename[sizeof(new_filename) - 1] = '\0';
strncpy(filename, new_filename, MAX_FILE_NAME_LENGTH);
}
}
{
int profile_number, card_number, card_number_max;
int res;
- int pos_profile_begin, pos_profile_end, pos_card_begin, pos_card_end, pos_name_header;
+ int pos_profile_begin, pos_card_begin, pos_card_end, pos_name_header;
int pos_alsa_section_begin, pos_after_alsa_section;
char header[MAX_SEARCH_FIELD_LENGTH];
void *buffer_copy = NULL;
compose_search_string(header, PROFILE_HEADER_TEMPL, profile_or_card_number_as_str, place_holder, MAX_SEARCH_FIELD_LENGTH);
header[MAX_SEARCH_FIELD_LENGTH - 1] = '\0';
snprintf(buffer_copy + strlen(buffer_copy), max_length - strlen(buffer_copy), "%s\n", header);
- pos_profile_end = get_profile_end(buffer, profile_number);
/* search max card number in profile */
card_number_max = get_max_card_number_in_profile(buffer, profile_number);
for (card_number = 0; card_number <= card_number_max; card_number++)
void compose_tmpfile_name(char * const tmpfile, const char * const cfgfile)
{
- strncpy(tmpfile, cfgfile, MAX_FILE_NAME_LENGTH);
+ strncpy(tmpfile, cfgfile, MAX_FILE_NAME_LENGTH - 1);
tmpfile[MAX_FILE_NAME_LENGTH - 1] = '\0';
- strncpy(tmpfile + strlen(tmpfile), "_alsactl_tmp", MAX_FILE_NAME_LENGTH - strlen(tmpfile));
+ strncpy(tmpfile + strlen(tmpfile), "_alsactl_tmp", MAX_FILE_NAME_LENGTH - strlen(tmpfile) - 1);
tmpfile[MAX_FILE_NAME_LENGTH - 1] = '\0';
}
char search_string[MAX_SEARCH_FIELD_LENGTH];
char *pstr;
int pos_first_non_blank;
+ size_t len;
strncpy(search_string, string2, MAX_SEARCH_FIELD_LENGTH);
search_string[MAX_SEARCH_FIELD_LENGTH - 1] = '\0';
}
}
}
- strncpy(search_string, cmp_line, strlen(search_string));
+ len = strlen(search_string);
+ if (len > sizeof(search_string) - 1)
+ len = sizeof(search_string) - 1;
+ strncpy(search_string, cmp_line, len);
+ search_string[len] = '\0';
position = 0;
while (position < strlen(string1))