Fixed dev time compilation using J9+ producing incorrect bytecode.
This commit is contained in:
parent
aa5b9d12ea
commit
5a552b9f8d
|
@ -66,7 +66,7 @@ ext {
|
||||||
MAPPING_CHANNEL = 'snapshot'
|
MAPPING_CHANNEL = 'snapshot'
|
||||||
MAPPING_VERSION = '20200225-1.15.1'
|
MAPPING_VERSION = '20200225-1.15.1'
|
||||||
MC_VERSION = '1.15.2'
|
MC_VERSION = '1.15.2'
|
||||||
MCP_VERSION = '20200307.202953'
|
MCP_VERSION = '20200414.225201'
|
||||||
}
|
}
|
||||||
|
|
||||||
project(':mcp') {
|
project(':mcp') {
|
||||||
|
|
|
@ -14,7 +14,8 @@ set APP_BASE_NAME=%~n0
|
||||||
set APP_HOME=%DIRNAME%
|
set APP_HOME=%DIRNAME%
|
||||||
|
|
||||||
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||||
set DEFAULT_JVM_OPTS=
|
@rem All these are added to make the groovy compiler shut up!
|
||||||
|
set DEFAULT_JVM_OPTS=--add-opens=java.base/sun.util.calendar=ALL-UNNAMED --add-opens=java.base/sun.net.www.protocol.https=ALL-UNNAMED --add-opens=java.base/javax.net.ssl=ALL-UNNAMED --add-opens=java.base/sun.security.util=ALL-UNNAMED
|
||||||
|
|
||||||
@rem Find java.exe
|
@rem Find java.exe
|
||||||
if defined JAVA_HOME goto findJavaFromJavaHome
|
if defined JAVA_HOME goto findJavaFromJavaHome
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/com/mojang/blaze3d/platform/GlStateManager.java
|
--- a/com/mojang/blaze3d/platform/GlStateManager.java
|
||||||
+++ b/com/mojang/blaze3d/platform/GlStateManager.java
|
+++ b/com/mojang/blaze3d/platform/GlStateManager.java
|
||||||
@@ -578,10 +578,17 @@
|
@@ -579,10 +579,17 @@
|
||||||
GL13.glClientActiveTexture(p_227747_0_);
|
GL13.glClientActiveTexture(p_227747_0_);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/com/mojang/blaze3d/vertex/IVertexBuilder.java
|
--- a/com/mojang/blaze3d/vertex/IVertexBuilder.java
|
||||||
+++ b/com/mojang/blaze3d/vertex/IVertexBuilder.java
|
+++ b/com/mojang/blaze3d/vertex/IVertexBuilder.java
|
||||||
@@ -17,7 +17,7 @@
|
@@ -18,7 +18,7 @@
|
||||||
import org.lwjgl.system.MemoryStack;
|
import org.lwjgl.system.MemoryStack;
|
||||||
|
|
||||||
@OnlyIn(Dist.CLIENT)
|
@OnlyIn(Dist.CLIENT)
|
||||||
|
@ -9,7 +9,7 @@
|
||||||
Logger field_227884_f_ = LogManager.getLogger();
|
Logger field_227884_f_ = LogManager.getLogger();
|
||||||
|
|
||||||
IVertexBuilder func_225582_a_(double p_225582_1_, double p_225582_3_, double p_225582_5_);
|
IVertexBuilder func_225582_a_(double p_225582_1_, double p_225582_3_, double p_225582_5_);
|
||||||
@@ -95,11 +95,12 @@
|
@@ -96,11 +96,12 @@
|
||||||
f5 = p_227890_3_[k] * p_227890_6_;
|
f5 = p_227890_3_[k] * p_227890_6_;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/net/minecraft/client/renderer/BufferBuilder.java
|
--- a/net/minecraft/client/renderer/BufferBuilder.java
|
||||||
+++ b/net/minecraft/client/renderer/BufferBuilder.java
|
+++ b/net/minecraft/client/renderer/BufferBuilder.java
|
||||||
@@ -121,7 +121,6 @@
|
@@ -122,7 +122,6 @@
|
||||||
|
|
||||||
bitset.set(l);
|
bitset.set(l);
|
||||||
}
|
}
|
||||||
|
@ -8,22 +8,22 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
private void func_227829_a_(FloatBuffer p_227829_1_, int p_227829_2_) {
|
private void func_227829_a_(FloatBuffer p_227829_1_, int p_227829_2_) {
|
||||||
@@ -297,6 +296,7 @@
|
@@ -298,6 +297,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
ByteBuffer bytebuffer = this.field_179001_a.slice();
|
ByteBuffer bytebuffer = this.field_179001_a.slice();
|
||||||
+ bytebuffer.order(this.field_179001_a.order()); // FORGE: Fix incorrect byte order
|
+ bytebuffer.order(this.field_179001_a.order()); // FORGE: Fix incorrect byte order
|
||||||
this.field_179001_a.clear();
|
((Buffer)this.field_179001_a).clear();
|
||||||
return Pair.of(bufferbuilder$drawstate, bytebuffer);
|
return Pair.of(bufferbuilder$drawstate, bytebuffer);
|
||||||
}
|
}
|
||||||
@@ -364,4 +364,15 @@
|
@@ -365,4 +365,15 @@
|
||||||
this.field_179018_e = p_i225907_2_;
|
this.field_179018_e = p_i225907_2_;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+
|
+
|
||||||
+ public void putBulkData(ByteBuffer buffer) {
|
+ public void putBulkData(ByteBuffer buffer) {
|
||||||
+ func_181670_b(buffer.limit() + this.field_179011_q.func_177338_f());
|
+ func_181670_b(buffer.limit() + this.field_179011_q.func_177338_f());
|
||||||
+ this.field_179001_a.position(this.field_178997_d * this.field_179011_q.func_177338_f());
|
+ ((Buffer)this.field_179001_a).position(this.field_178997_d * this.field_179011_q.func_177338_f());
|
||||||
+ this.field_179001_a.put(buffer);
|
+ this.field_179001_a.put(buffer);
|
||||||
+ this.field_178997_d += buffer.limit() / this.field_179011_q.func_177338_f();
|
+ this.field_178997_d += buffer.limit() / this.field_179011_q.func_177338_f();
|
||||||
+ this.field_227824_l_ += buffer.limit();
|
+ this.field_227824_l_ += buffer.limit();
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/net/minecraft/client/renderer/texture/NativeImage.java
|
--- a/net/minecraft/client/renderer/texture/NativeImage.java
|
||||||
+++ b/net/minecraft/client/renderer/texture/NativeImage.java
|
+++ b/net/minecraft/client/renderer/texture/NativeImage.java
|
||||||
@@ -179,7 +179,7 @@
|
@@ -180,7 +180,7 @@
|
||||||
public int func_195709_a(int p_195709_1_, int p_195709_2_) {
|
public int func_195709_a(int p_195709_1_, int p_195709_2_) {
|
||||||
if (this.field_211680_b != NativeImage.PixelFormat.RGBA) {
|
if (this.field_211680_b != NativeImage.PixelFormat.RGBA) {
|
||||||
throw new IllegalArgumentException(String.format("getPixelRGBA only works on RGBA images; have %s", this.field_211680_b));
|
throw new IllegalArgumentException(String.format("getPixelRGBA only works on RGBA images; have %s", this.field_211680_b));
|
||||||
|
@ -9,7 +9,7 @@
|
||||||
this.func_195696_g();
|
this.func_195696_g();
|
||||||
long i = (long)((p_195709_1_ + p_195709_2_ * this.field_195719_a) * 4);
|
long i = (long)((p_195709_1_ + p_195709_2_ * this.field_195719_a) * 4);
|
||||||
return MemoryUtil.memGetInt(this.field_195722_d + i);
|
return MemoryUtil.memGetInt(this.field_195722_d + i);
|
||||||
@@ -191,7 +191,7 @@
|
@@ -192,7 +192,7 @@
|
||||||
public void func_195700_a(int p_195700_1_, int p_195700_2_, int p_195700_3_) {
|
public void func_195700_a(int p_195700_1_, int p_195700_2_, int p_195700_3_) {
|
||||||
if (this.field_211680_b != NativeImage.PixelFormat.RGBA) {
|
if (this.field_211680_b != NativeImage.PixelFormat.RGBA) {
|
||||||
throw new IllegalArgumentException(String.format("getPixelRGBA only works on RGBA images; have %s", this.field_211680_b));
|
throw new IllegalArgumentException(String.format("getPixelRGBA only works on RGBA images; have %s", this.field_211680_b));
|
||||||
|
@ -18,7 +18,7 @@
|
||||||
this.func_195696_g();
|
this.func_195696_g();
|
||||||
long i = (long)((p_195700_1_ + p_195700_2_ * this.field_195719_a) * 4);
|
long i = (long)((p_195700_1_ + p_195700_2_ * this.field_195719_a) * 4);
|
||||||
MemoryUtil.memPutInt(this.field_195722_d + i, p_195700_3_);
|
MemoryUtil.memPutInt(this.field_195722_d + i, p_195700_3_);
|
||||||
@@ -203,7 +203,7 @@
|
@@ -204,7 +204,7 @@
|
||||||
public byte func_211675_e(int p_211675_1_, int p_211675_2_) {
|
public byte func_211675_e(int p_211675_1_, int p_211675_2_) {
|
||||||
if (!this.field_211680_b.func_211653_r()) {
|
if (!this.field_211680_b.func_211653_r()) {
|
||||||
throw new IllegalArgumentException(String.format("no luminance or alpha in %s", this.field_211680_b));
|
throw new IllegalArgumentException(String.format("no luminance or alpha in %s", this.field_211680_b));
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
--- a/net/minecraft/world/chunk/storage/RegionFile.java
|
--- a/net/minecraft/world/chunk/storage/RegionFile.java
|
||||||
+++ b/net/minecraft/world/chunk/storage/RegionFile.java
|
+++ b/net/minecraft/world/chunk/storage/RegionFile.java
|
||||||
@@ -32,6 +32,7 @@
|
@@ -33,6 +33,7 @@
|
||||||
private final IntBuffer field_76716_d;
|
private final IntBuffer field_76716_d;
|
||||||
private final IntBuffer field_227127_h_;
|
private final IntBuffer field_227127_h_;
|
||||||
private final RegionBitmap field_227128_i_ = new RegionBitmap();
|
private final RegionBitmap field_227128_i_ = new RegionBitmap();
|
||||||
|
@ -8,7 +8,7 @@
|
||||||
|
|
||||||
public RegionFile(File p_i225784_1_, File p_i225784_2_) throws IOException {
|
public RegionFile(File p_i225784_1_, File p_i225784_2_) throws IOException {
|
||||||
this(p_i225784_1_.toPath(), p_i225784_2_.toPath(), RegionFileVersion.field_227159_b_);
|
this(p_i225784_1_.toPath(), p_i225784_2_.toPath(), RegionFileVersion.field_227159_b_);
|
||||||
@@ -39,6 +40,7 @@
|
@@ -40,6 +41,7 @@
|
||||||
|
|
||||||
public RegionFile(Path p_i225785_1_, Path p_i225785_2_, RegionFileVersion p_i225785_3_) throws IOException {
|
public RegionFile(Path p_i225785_1_, Path p_i225785_2_, RegionFileVersion p_i225785_3_) throws IOException {
|
||||||
this.field_227125_e_ = p_i225785_3_;
|
this.field_227125_e_ = p_i225785_3_;
|
||||||
|
@ -16,7 +16,7 @@
|
||||||
if (!Files.isDirectory(p_i225785_2_)) {
|
if (!Files.isDirectory(p_i225785_2_)) {
|
||||||
throw new IllegalArgumentException("Expected directory, got " + p_i225785_2_.toAbsolutePath());
|
throw new IllegalArgumentException("Expected directory, got " + p_i225785_2_.toAbsolutePath());
|
||||||
} else {
|
} else {
|
||||||
@@ -61,6 +63,8 @@
|
@@ -62,6 +64,8 @@
|
||||||
if (k != 0) {
|
if (k != 0) {
|
||||||
int l = func_227142_b_(k);
|
int l = func_227142_b_(k);
|
||||||
int i1 = func_227131_a_(k);
|
int i1 = func_227131_a_(k);
|
||||||
|
@ -25,7 +25,7 @@
|
||||||
this.field_227128_i_.func_227120_a_(l, i1);
|
this.field_227128_i_.func_227120_a_(l, i1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -69,6 +73,66 @@
|
@@ -70,6 +74,66 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -35,7 +35,7 @@
|
||||||
+
|
+
|
||||||
+ ByteBuffer header = ByteBuffer.allocate(5);
|
+ ByteBuffer header = ByteBuffer.allocate(5);
|
||||||
+ this.field_76719_c.read(header, offset * 4096);
|
+ this.field_76719_c.read(header, offset * 4096);
|
||||||
+ header.flip();
|
+ ((Buffer)header).flip();
|
||||||
+
|
+
|
||||||
+ if (header.remaining() < 5) {
|
+ if (header.remaining() < 5) {
|
||||||
+ field_227122_a_.error("Chunk {},{} in {} header is truncated: expected 5 but read {}", chunkX, chunkZ, this.filePath.getFileName(), header.remaining());
|
+ field_227122_a_.error("Chunk {},{} in {} header is truncated: expected 5 but read {}", chunkX, chunkZ, this.filePath.getFileName(), header.remaining());
|
||||||
|
@ -63,7 +63,7 @@
|
||||||
+
|
+
|
||||||
+ ByteBuffer header = ByteBuffer.allocate(5);
|
+ ByteBuffer header = ByteBuffer.allocate(5);
|
||||||
+ this.field_76719_c.read(header, offset * 4096);
|
+ this.field_76719_c.read(header, offset * 4096);
|
||||||
+ header.flip();
|
+ ((Buffer)header).flip();
|
||||||
+
|
+
|
||||||
+ if (header.remaining() < 5) {
|
+ if (header.remaining() < 5) {
|
||||||
+ field_227122_a_.error("Chunk {} in {} header is truncated: expected 5 but read {}", chunk, this.filePath.getFileName(), header.remaining());
|
+ field_227122_a_.error("Chunk {} in {} header is truncated: expected 5 but read {}", chunk, this.filePath.getFileName(), header.remaining());
|
||||||
|
@ -78,7 +78,7 @@
|
||||||
+
|
+
|
||||||
+ ByteBuffer data = ByteBuffer.allocate(length + 4);
|
+ ByteBuffer data = ByteBuffer.allocate(length + 4);
|
||||||
+ this.field_76719_c.read(data, offset * 4096);
|
+ this.field_76719_c.read(data, offset * 4096);
|
||||||
+ data.flip();
|
+ ((Buffer)data).flip();
|
||||||
+
|
+
|
||||||
+ if (data.remaining() < length + 4) {
|
+ if (data.remaining() < length + 4) {
|
||||||
+ field_227122_a_.error("Chunk {} in {} is truncated: expected {} but read {}", chunk, this.filePath.getFileName(), length + 4, data.remaining());
|
+ field_227122_a_.error("Chunk {} in {} is truncated: expected {} but read {}", chunk, this.filePath.getFileName(), length + 4, data.remaining());
|
||||||
|
@ -92,7 +92,7 @@
|
||||||
private Path func_227145_e_(ChunkPos p_227145_1_) {
|
private Path func_227145_e_(ChunkPos p_227145_1_) {
|
||||||
String s = "c." + p_227145_1_.field_77276_a + "." + p_227145_1_.field_77275_b + ".mcc";
|
String s = "c." + p_227145_1_.field_77276_a + "." + p_227145_1_.field_77275_b + ".mcc";
|
||||||
return this.field_227124_d_.resolve(s);
|
return this.field_227124_d_.resolve(s);
|
||||||
@@ -224,6 +288,7 @@
|
@@ -225,6 +289,7 @@
|
||||||
int j = this.field_76716_d.get(i);
|
int j = this.field_76716_d.get(i);
|
||||||
int k = func_227142_b_(j);
|
int k = func_227142_b_(j);
|
||||||
int l = func_227131_a_(j);
|
int l = func_227131_a_(j);
|
||||||
|
|
|
@ -39,6 +39,7 @@ import static org.lwjgl.opengl.GL20.glVertexAttribPointer;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
|
import java.nio.Buffer;
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
@ -431,7 +432,7 @@ public class ForgeHooksClient
|
||||||
VertexFormatElement attr = format.getElements().get(element);
|
VertexFormatElement attr = format.getElements().get(element);
|
||||||
int count = attr.getElementCount();
|
int count = attr.getElementCount();
|
||||||
int constant = attr.getType().getGlConstant();
|
int constant = attr.getType().getGlConstant();
|
||||||
buffer.position(format.getOffset(element));
|
((Buffer)buffer).position(format.getOffset(element));
|
||||||
switch(attrType)
|
switch(attrType)
|
||||||
{
|
{
|
||||||
case POSITION:
|
case POSITION:
|
||||||
|
|
|
@ -34,6 +34,7 @@ import net.minecraftforge.client.model.pipeline.LightUtil;
|
||||||
|
|
||||||
import org.lwjgl.system.MemoryStack;
|
import org.lwjgl.system.MemoryStack;
|
||||||
|
|
||||||
|
import java.nio.Buffer;
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
import java.nio.IntBuffer;
|
import java.nio.IntBuffer;
|
||||||
|
|
||||||
|
@ -71,7 +72,7 @@ public interface IForgeVertexBuilder
|
||||||
IntBuffer intbuffer = bytebuffer.asIntBuffer();
|
IntBuffer intbuffer = bytebuffer.asIntBuffer();
|
||||||
|
|
||||||
for(int v = 0; v < vertexCount; ++v) {
|
for(int v = 0; v < vertexCount; ++v) {
|
||||||
intbuffer.clear();
|
((Buffer)intbuffer).clear();
|
||||||
intbuffer.put(aint, v * 8, 8);
|
intbuffer.put(aint, v * 8, 8);
|
||||||
float f = bytebuffer.getFloat(0);
|
float f = bytebuffer.getFloat(0);
|
||||||
float f1 = bytebuffer.getFloat(4);
|
float f1 = bytebuffer.getFloat(4);
|
||||||
|
@ -106,7 +107,7 @@ public interface IForgeVertexBuilder
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
default int applyBakedLighting(int lightmapCoord, ByteBuffer data) {
|
default int applyBakedLighting(int lightmapCoord, ByteBuffer data) {
|
||||||
int bl = LightTexture.getLightBlock(lightmapCoord);
|
int bl = LightTexture.getLightBlock(lightmapCoord);
|
||||||
int sl = LightTexture.getLightSky(lightmapCoord);
|
int sl = LightTexture.getLightSky(lightmapCoord);
|
||||||
|
@ -117,7 +118,7 @@ public interface IForgeVertexBuilder
|
||||||
sl = Math.max(sl, slBaked);
|
sl = Math.max(sl, slBaked);
|
||||||
return LightTexture.packLight(bl, sl);
|
return LightTexture.packLight(bl, sl);
|
||||||
}
|
}
|
||||||
|
|
||||||
default void applyBakedNormals(Vector3f generated, ByteBuffer data, Matrix3f normalTransform) {
|
default void applyBakedNormals(Vector3f generated, ByteBuffer data, Matrix3f normalTransform) {
|
||||||
byte nx = data.get(28);
|
byte nx = data.get(28);
|
||||||
byte ny = data.get(29);
|
byte ny = data.get(29);
|
||||||
|
|
|
@ -22,6 +22,7 @@ package net.minecraftforge.client.model.b3d;
|
||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
import java.nio.Buffer;
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
import java.nio.ByteOrder;
|
import java.nio.ByteOrder;
|
||||||
import java.nio.channels.FileChannel;
|
import java.nio.channels.FileChannel;
|
||||||
|
@ -41,7 +42,6 @@ import javax.annotation.Nullable;
|
||||||
import net.minecraft.client.renderer.*;
|
import net.minecraft.client.renderer.*;
|
||||||
import net.minecraft.util.math.Vec2f;
|
import net.minecraft.util.math.Vec2f;
|
||||||
import net.minecraftforge.versions.forge.ForgeVersion;
|
import net.minecraftforge.versions.forge.ForgeVersion;
|
||||||
import net.minecraftforge.common.model.TransformationHelper;
|
|
||||||
import org.apache.commons.io.IOUtils;
|
import org.apache.commons.io.IOUtils;
|
||||||
import org.apache.commons.lang3.tuple.Pair;
|
import org.apache.commons.lang3.tuple.Pair;
|
||||||
import org.apache.commons.lang3.tuple.Triple;
|
import org.apache.commons.lang3.tuple.Triple;
|
||||||
|
@ -100,11 +100,11 @@ public class B3DModel
|
||||||
int l = ByteBuffer.wrap(tmp).order(ByteOrder.LITTLE_ENDIAN).getInt();
|
int l = ByteBuffer.wrap(tmp).order(ByteOrder.LITTLE_ENDIAN).getInt();
|
||||||
if(l < 0 || l + 8 < 0) throw new IOException("File is too large");
|
if(l < 0 || l + 8 < 0) throw new IOException("File is too large");
|
||||||
buf = ByteBuffer.allocate(l + 8).order(ByteOrder.LITTLE_ENDIAN);
|
buf = ByteBuffer.allocate(l + 8).order(ByteOrder.LITTLE_ENDIAN);
|
||||||
buf.clear();
|
((Buffer)buf).clear();
|
||||||
buf.put(tag);
|
buf.put(tag);
|
||||||
buf.put(tmp);
|
buf.put(tmp);
|
||||||
buf.put(IOUtils.toByteArray(in, l));
|
buf.put(IOUtils.toByteArray(in, l));
|
||||||
buf.flip();
|
((Buffer)buf).flip();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -193,7 +193,7 @@ public class B3DModel
|
||||||
while(buf.get() != 0);
|
while(buf.get() != 0);
|
||||||
int end = buf.position();
|
int end = buf.position();
|
||||||
byte[] tmp = new byte[end - start - 1];
|
byte[] tmp = new byte[end - start - 1];
|
||||||
buf.position(start);
|
((Buffer)buf).position(start);
|
||||||
buf.get(tmp);
|
buf.get(tmp);
|
||||||
buf.get();
|
buf.get();
|
||||||
return new String(tmp, "UTF8");
|
return new String(tmp, "UTF8");
|
||||||
|
@ -204,12 +204,12 @@ public class B3DModel
|
||||||
private void pushLimit()
|
private void pushLimit()
|
||||||
{
|
{
|
||||||
limitStack.push(buf.limit());
|
limitStack.push(buf.limit());
|
||||||
buf.limit(buf.position() + length);
|
((Buffer)buf).limit(buf.position() + length);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void popLimit()
|
private void popLimit()
|
||||||
{
|
{
|
||||||
buf.limit(limitStack.pop());
|
((Buffer)buf).limit(limitStack.pop());
|
||||||
}
|
}
|
||||||
|
|
||||||
private B3DModel bb3d() throws IOException
|
private B3DModel bb3d() throws IOException
|
||||||
|
@ -501,7 +501,7 @@ public class B3DModel
|
||||||
|
|
||||||
private void skip()
|
private void skip()
|
||||||
{
|
{
|
||||||
buf.position(buf.position() + length);
|
((Buffer)buf).position(buf.position() + length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue