You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by cu...@apache.org on 2006/02/23 06:16:17 UTC
svn commit: r380042 -
/lucene/hadoop/trunk/src/java/org/apache/hadoop/fs/FSDataInputStream.java
Author: cutting
Date: Wed Feb 22 21:16:12 2006
New Revision: 380042
URL: http://svn.apache.org/viewcvs?rev=380042&view=rev
Log:
Fix for HADOOP-40. Buffer position was not maintained correctly. Contributed by Konstantin Shvachko.
Modified:
lucene/hadoop/trunk/src/java/org/apache/hadoop/fs/FSDataInputStream.java
Modified: lucene/hadoop/trunk/src/java/org/apache/hadoop/fs/FSDataInputStream.java
URL: http://svn.apache.org/viewcvs/lucene/hadoop/trunk/src/java/org/apache/hadoop/fs/FSDataInputStream.java?rev=380042&r1=380041&r2=380042&view=diff
==============================================================================
--- lucene/hadoop/trunk/src/java/org/apache/hadoop/fs/FSDataInputStream.java (original)
+++ lucene/hadoop/trunk/src/java/org/apache/hadoop/fs/FSDataInputStream.java Wed Feb 22 21:16:12 2006
@@ -154,8 +154,9 @@
// This is the only read() method called by BufferedInputStream, so we trap
// calls to it in order to cache the position.
public int read(byte b[], int off, int len) throws IOException {
- int result = in.read(b, off, len);
- position += result;
+ int result;
+ if( (result = in.read(b, off, len)) > 0 )
+ position += result;
return result;
}