You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.1 KiB
51 lines
1.1 KiB
11 years ago
|
/*
|
||
|
* Fernflower - The Analytical Java Decompiler
|
||
|
* http://www.reversed-java.com
|
||
|
*
|
||
|
* (C) 2008 - 2010, Stiver
|
||
|
*
|
||
|
* This software is NEITHER public domain NOR free software
|
||
|
* as per GNU License. See license.txt for more details.
|
||
|
*
|
||
|
* This software is distributed WITHOUT ANY WARRANTY; without
|
||
|
* even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
||
|
* A PARTICULAR PURPOSE.
|
||
|
*/
|
||
|
|
||
10 years ago
|
package org.jetbrains.java.decompiler.util;
|
||
11 years ago
|
|
||
|
import java.io.DataInputStream;
|
||
|
import java.io.IOException;
|
||
|
import java.io.InputStream;
|
||
|
|
||
|
public class DataInputFullStream extends DataInputStream {
|
||
|
|
||
|
public DataInputFullStream(InputStream in) {
|
||
|
super(in);
|
||
|
}
|
||
|
|
||
|
public final int readFull(byte b[]) throws IOException {
|
||
|
|
||
|
int length = b.length;
|
||
|
byte[] btemp = new byte[length];
|
||
|
int pos = 0;
|
||
|
|
||
|
int bytes_read = -1;
|
||
|
for(;;) {
|
||
|
bytes_read = read(btemp, 0, length-pos);
|
||
|
if(bytes_read==-1) {
|
||
|
return -1;
|
||
|
}
|
||
|
|
||
|
System.arraycopy(btemp, 0, b, pos, bytes_read);
|
||
|
pos+=bytes_read;
|
||
|
if(pos == length) {
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return length;
|
||
|
}
|
||
|
|
||
|
}
|