1.1 --- a/boot/src/main/java/org/netbeans/html/boot/impl/FnUtils.java Mon May 02 05:53:36 2016 +0200
1.2 +++ b/boot/src/main/java/org/netbeans/html/boot/impl/FnUtils.java Tue May 03 04:44:10 2016 +0200
1.3 @@ -44,7 +44,6 @@
1.4
1.5 import java.io.IOException;
1.6 import java.io.InputStream;
1.7 -import java.io.InputStreamReader;
1.8 import java.io.Reader;
1.9 import java.net.URL;
1.10 import java.util.ArrayList;
1.11 @@ -441,13 +440,20 @@
1.12 super.visitTypeInsn(Opcodes.CHECKCAST, sv.returnType.getInternalName());
1.13 super.visitInsn(Opcodes.ARETURN);
1.14 break;
1.15 - case Type.BOOLEAN:
1.16 + case Type.BOOLEAN: {
1.17 + Label handleNullValue = new Label();
1.18 + super.visitInsn(Opcodes.DUP);
1.19 + super.visitJumpInsn(Opcodes.IFNULL, handleNullValue);
1.20 super.visitTypeInsn(Opcodes.CHECKCAST, "java/lang/Boolean");
1.21 super.visitMethodInsn(Opcodes.INVOKEVIRTUAL,
1.22 "java/lang/Boolean", "booleanValue", "()Z"
1.23 );
1.24 super.visitInsn(Opcodes.IRETURN);
1.25 + super.visitLabel(handleNullValue);
1.26 + super.visitInsn(Opcodes.ICONST_0);
1.27 + super.visitInsn(Opcodes.IRETURN);
1.28 break;
1.29 + }
1.30 default:
1.31 super.visitTypeInsn(Opcodes.CHECKCAST, "java/lang/Number");
1.32 super.visitMethodInsn(Opcodes.INVOKEVIRTUAL,
2.1 --- a/json-tck/src/main/java/net/java/html/js/tests/Bodies.java Mon May 02 05:53:36 2016 +0200
2.2 +++ b/json-tck/src/main/java/net/java/html/js/tests/Bodies.java Tue May 03 04:44:10 2016 +0200
2.3 @@ -216,7 +216,7 @@
2.4 + "obj.x = 1;\n"
2.5 + "return sum.@net.java.html.js.tests.Sum::checkNonNull(Ljava/lang/Object;)(obj[p]);\n"
2.6 )
2.7 - static native Boolean nonNull(Sum sum, String p);
2.8 + static native boolean nonNull(Sum sum, String p);
2.9
2.10 @JavaScriptBody(args = {}, javacall = true, body =
2.11 "return @net.java.html.js.tests.Bodies::problematicString()();"
3.1 --- a/json-tck/src/main/java/net/java/html/js/tests/JavaScriptBodyTest.java Mon May 02 05:53:36 2016 +0200
3.2 +++ b/json-tck/src/main/java/net/java/html/js/tests/JavaScriptBodyTest.java Tue May 03 04:44:10 2016 +0200
3.3 @@ -384,8 +384,8 @@
3.4
3.5 @KOTest public void callbackUnknown() {
3.6 Sum s = new Sum();
3.7 - Boolean nonNull = Bodies.nonNull(s, "y");
3.8 - assertFalse(Boolean.TRUE.equals(nonNull), "y property doesn't exist");
3.9 + boolean nonNull = Bodies.nonNull(s, "y");
3.10 + assertFalse(nonNull, "y property doesn't exist");
3.11 }
3.12
3.13 @KOTest public void callbackUnknownArray() {