Fix bug in getSkin() that could result in skins not being fully read.
This commit is contained in:
parent
c54d767b6e
commit
f889624d86
1 changed files with 13 additions and 4 deletions
|
@ -93,10 +93,19 @@ public final class Skin {
|
|||
reader = new InputStreamReader(res.getInputStream(), encoding);
|
||||
}
|
||||
|
||||
char[] characterBuffer = new char[(int) res.getLength()];
|
||||
int length = reader.read(characterBuffer);
|
||||
|
||||
reader.close();
|
||||
int length = (int) res.getLength();
|
||||
char[] characterBuffer = new char[length];
|
||||
int read = 0;
|
||||
try {
|
||||
while (read < length) {
|
||||
int r = reader.read(characterBuffer, read, length - read);
|
||||
if (r == -1)
|
||||
break;
|
||||
read += r;
|
||||
}
|
||||
} finally {
|
||||
reader.close();
|
||||
}
|
||||
return new Skin(characterBuffer, length, app);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue