+ /* ---------- step 2: search for matching first suffix ---------- */
+
+ start_pos += len_base_prefix;
+ for (j=0; j<num_ext1_suffixes && !ext1_suffix_found; j++)
+ {
+ char *ext1_suffix = ext1_suffixes[j];
+ int len_ext1_suffix = strlen(ext1_suffix);
+ boolean ext2_suffix_found = FALSE;
+
+ ext1_suffix_found = token_suffix_match(token, ext1_suffix, start_pos);
+
+ if (!ext1_suffix_found)
+ continue;
+
+ if (start_pos + len_ext1_suffix == len_token) /* exact match */
+ {
+ add_dynamic_file_list_entry(dynamic_file_list,
+ num_dynamic_file_list_entries,
+ extra_file_list,
+ suffix_list,
+ num_suffix_list_entries,
+ token);
+ continue;
+ }
+
+#if 0
+ if (IS_PARENT_PROCESS(audio.mixer_pid))
+ printf("---> examining token '%s': search 2nd suffix ...\n", token);
+#endif
+
+ /* ---------- step 3: search for matching second suffix ---------- */
+
+ start_pos += len_ext1_suffix;
+ for (k=0; k<num_ext2_suffixes && !ext2_suffix_found; k++)
+ {
+ char *ext2_suffix = ext2_suffixes[k];
+ int len_ext2_suffix = strlen(ext2_suffix);
+
+ ext2_suffix_found = token_suffix_match(token, ext2_suffix,start_pos);
+
+ if (!ext2_suffix_found)
+ continue;
+
+ if (start_pos + len_ext2_suffix == len_token) /* exact match */
+ {
+ add_dynamic_file_list_entry(dynamic_file_list,
+ num_dynamic_file_list_entries,
+ extra_file_list,
+ suffix_list,
+ num_suffix_list_entries,
+ token);
+ continue;
+ }
+ }
+ }
+ }
+ }
+
+ if (extra_file_list != NULL &&
+ options.verbose && IS_PARENT_PROCESS(audio.mixer_pid))