2003-06-24 Michael Koch <konqueror@gmx.de>

* java/io/LineNumberReader.java
	(skip): Dont do line number accounting here as this is already done in
	read(), simplified.

From-SVN: r68408
This commit is contained in:
Michael Koch 2003-06-24 07:25:24 +00:00 committed by Michael Koch
parent d1a2c4d688
commit 20afd47571
2 changed files with 17 additions and 26 deletions

View File

@ -1,3 +1,9 @@
2003-06-24 Michael Koch <konqueror@gmx.de>
* java/io/LineNumberReader.java
(skip): Dont do line number accounting here as this is already done in
read(), simplified.
2003-06-21 Michael Koch <konqueror@gmx.de>
* java/io/File.java

View File

@ -374,37 +374,22 @@ public class LineNumberReader extends BufferedReader
*
* @exception IOException If an error occurs
*/
public long skip(long count) throws IOException
public long skip (long count) throws IOException
{
if (count <= 0)
return 0;
long to_do = count;
do
int skipped;
for (skipped = 0; skipped < count; skipped++)
{
int ch = read();
if (ch < 0)
break;
to_do--;
if (ch == '\n' || ch == '\r')
lineNumber++;
else
{
long fence = pos + to_do;
if (limit < fence)
fence = limit;
int end = pos;
for (; end < fence; end++)
{
char endch = buffer[end];
if (endch == '\n' || endch == '\r')
break;
}
to_do -= end - pos;
pos = end;
}
int ch = read();
if (ch < 0)
break;
}
while (to_do > 0);
return count - to_do;
return skipped;
}
}