nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/linker/JavaArgumentConverters.java
--- a/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/linker/JavaArgumentConverters.java Fri Feb 27 14:33:47 2015 +0100
+++ b/nashorn/src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/linker/JavaArgumentConverters.java Mon Mar 02 14:33:55 2015 +0100
@@ -27,6 +27,7 @@
import static jdk.nashorn.internal.lookup.Lookup.MH;
import static jdk.nashorn.internal.runtime.ECMAErrors.typeError;
+import static jdk.nashorn.internal.runtime.JSType.isString;
import static jdk.nashorn.internal.runtime.ScriptRuntime.UNDEFINED;
import java.lang.invoke.MethodHandle;
@@ -78,7 +79,7 @@
}
if (obj == UNDEFINED) {
- // NOTE: same reasoning for FindBugs NP_BOOLEAN_RETURN_NUL warning as in the preceding comment.
+ // NOTE: same reasoning for FindBugs NP_BOOLEAN_RETURN_NULL warning as in the preceding comment.
return null;
}
@@ -87,7 +88,7 @@
return num != 0 && !Double.isNaN(num);
}
- if (obj instanceof String || obj instanceof ConsString) {
+ if (isString(obj)) {
return ((CharSequence) obj).length() > 0;
}
@@ -207,7 +208,7 @@
return f.longValue();
} else if (obj instanceof Number) {
return ((Number)obj).longValue();
- } else if (obj instanceof String || obj instanceof ConsString) {
+ } else if (isString(obj)) {
return JSType.toLong(obj);
} else if (obj instanceof Boolean) {
return (Boolean)obj ? 1L : 0L;