ReadString() now returns at end-of-line

This commit is contained in:
Klaus Schmidinger 2000-09-19 17:55:09 +02:00
parent 0d85a30e61
commit 9600eaf3f1
1 changed files with 3 additions and 3 deletions

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and * See the main source file 'vdr.c' for copyright information and
* how to reach the author. * how to reach the author.
* *
* $Id: tools.c 1.18 2000/09/17 15:36:33 kls Exp $ * $Id: tools.c 1.19 2000/09/19 17:55:09 kls Exp $
*/ */
#define _GNU_SOURCE #define _GNU_SOURCE
@ -353,7 +353,7 @@ int cFile::ReadString(char *Buffer, int Size)
bool wait = true; bool wait = true;
while (Ready(wait)) { while (Ready(wait)) {
int n = read(f, Buffer + rbytes, Size - rbytes); int n = read(f, Buffer + rbytes, 1);
if (n == 0) if (n == 0)
break; // EOF break; // EOF
if (n < 0) { if (n < 0) {
@ -361,7 +361,7 @@ int cFile::ReadString(char *Buffer, int Size)
return -1; return -1;
} }
rbytes += n; rbytes += n;
if (rbytes == Size) if (rbytes == Size || Buffer[rbytes - 1] == '\n')
break; break;
wait = false; wait = false;
} }