Merge pull request #6174 from Abextm/fix-region-loading

cache: Correct Location loading
This commit is contained in:
Abex
2018-11-03 04:11:50 -06:00
committed by GitHub
2 changed files with 24 additions and 10 deletions

View File

@@ -47,7 +47,7 @@ public class LocationsLoader
int id = -1; int id = -1;
int idOffset; int idOffset;
while ((idOffset = buf.readUnsignedShortSmart()) != 0) while ((idOffset = buf.readUnsignedIntSmartShortCompat()) != 0)
{ {
id += idOffset; id += idOffset;

View File

@@ -157,6 +157,20 @@ public class InputStream extends java.io.InputStream
return peek < 128 ? this.readUnsignedByte() : this.readUnsignedShort() - 0x8000; return peek < 128 ? this.readUnsignedByte() : this.readUnsignedShort() - 0x8000;
} }
public int readUnsignedIntSmartShortCompat()
{
int var1 = 0;
int var2;
for (var2 = this.readUnsignedShortSmart(); var2 == 32767; var2 = this.readUnsignedShortSmart())
{
var1 += 32767;
}
var1 += var2;
return var1;
}
public String readString() public String readString()
{ {
StringBuilder sb = new StringBuilder(); StringBuilder sb = new StringBuilder();