On Sat, Dec 29, 2018 at 01:52:44PM +0100, Thomas Schmitt wrote: > _init_bincue() sets .first_track to 1 and calls parse_cuefile() with a > non-NULL argument "cd". It too sets cd->gen.i_first_track to 1 before > examining the TRACK lines: > > /* TRACK N <mode> */ > } else if (0 == strcmp("TRACK", psz_keyword)) { > ... > if (1!=sscanf(psz_field, "%d", &i_track)) { > > The variable i_track is not used further. The only purpose for the scanf() > is to check whether some arbitrary number is written there. > > Remedy would be to record the track number of the first TRACK line > as p_env->gen.i_first_track and to demand that the subsequent TRACK lines > bear nicely incrementing numbers. > > Then we probably get errors when using track numbers ... > I will try what happens.
Nice find. Let us know the outcome! -- Best Regards Edd Barrett http://www.theunixzoo.co.uk