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