Fix bug in WASM backend

This commit is contained in:
Alexey Andreev 2019-10-18 17:09:57 +03:00
parent 8a91605c56
commit 70cb67c8f0

View File

@ -283,15 +283,18 @@ public class WasmClassGenerator {
ClassReader cls = processedClassSource.get(name);
if (cls.getSimpleName() != null) {
header.setAddress(CLASS_SIMPLE_NAME, stringPool.getStringPointer(cls.getSimpleName()));
}
if (cls != null) {
if (cls.getSimpleName() != null) {
header.setAddress(CLASS_SIMPLE_NAME, stringPool.getStringPointer(cls.getSimpleName()));
}
if (cls.getOwnerName() != null && processedClassSource.get(cls.getOwnerName()) != null) {
header.setAddress(CLASS_ENCLOSING_CLASS, getClassPointer(ValueType.object(cls.getOwnerName())));
}
if (cls.getDeclaringClassName() != null && processedClassSource.get(cls.getDeclaringClassName()) != null) {
header.setAddress(CLASS_DECLARING_CLASS, getClassPointer(ValueType.object(cls.getDeclaringClassName())));
if (cls.getOwnerName() != null && processedClassSource.get(cls.getOwnerName()) != null) {
header.setAddress(CLASS_ENCLOSING_CLASS, getClassPointer(ValueType.object(cls.getOwnerName())));
}
if (cls.getDeclaringClassName() != null && processedClassSource.get(cls.getDeclaringClassName()) != null) {
header.setAddress(CLASS_DECLARING_CLASS,
getClassPointer(ValueType.object(cls.getDeclaringClassName())));
}
}
if (vtable != null) {