Klaus Schmidinger wrote: > ... > Please try if this helps: > > --- recording.c 2005/05/29 11:16:57 1.107 > +++ recording.c 2005/06/03 13:15:54 > @@ -480,7 +480,7 @@ > char *data[3] = { NULL }; > cReadLine ReadLine; > char *s; > - while ((s = ReadLine.Read(f)) != NULL && line < 3) { > + while ((s = ReadLine.Read(f)) != NULL) { > if (*s) { > if (data[line]) { > int len = strlen(s); > @@ -492,7 +492,7 @@ > else > data[line] = strdup(s); > } > - else > + else if (line < 2) > line++; > } > fclose(f); Actually this might be even better, since it preserves empty lines in the description: --- recording.c 2005/05/29 11:16:57 1.107 +++ recording.c 2005/06/04 11:31:24 @@ -480,8 +480,8 @@ char *data[3] = { NULL }; cReadLine ReadLine; char *s; - while ((s = ReadLine.Read(f)) != NULL && line < 3) { - if (*s) { + while ((s = ReadLine.Read(f)) != NULL) { + if (*s || line > 1) { if (data[line]) { int len = strlen(s); len += strlen(data[line]) + 1; Klaus