summaryrefslogtreecommitdiffstatshomepage
path: root/unix
diff options
context:
space:
mode:
authorPaul Sokolovsky <pfalcon@users.sourceforge.net>2015-09-18 13:19:50 +0300
committerPaul Sokolovsky <pfalcon@users.sourceforge.net>2015-09-18 13:21:21 +0300
commit011c7f5718473f7a2aa855d4d8b432f6c2baeb72 (patch)
tree7df374519a14db986557ebf4b4c9f73a2805238f /unix
parent1cb5de2cd5d563b6757ea8a683103daa3155083f (diff)
downloadmicropython-011c7f5718473f7a2aa855d4d8b432f6c2baeb72.tar.gz
micropython-011c7f5718473f7a2aa855d4d8b432f6c2baeb72.zip
unix/modjni: py2jvalue: Handle both int and long java types (with TODO for long).
Diffstat (limited to 'unix')
-rw-r--r--unix/modjni.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/unix/modjni.c b/unix/modjni.c
index 001fa097ab..929a0131f1 100644
--- a/unix/modjni.c
+++ b/unix/modjni.c
@@ -218,8 +218,12 @@ STATIC bool py2jvalue(const char **jtypesig, mp_obj_t arg, jvalue *out) {
return false;
}
} else if (type == &mp_type_int) {
- CHECK_TYPE("long");
- out->j = mp_obj_get_int(arg);
+ if (IMATCH(arg_type, "int") || IMATCH(arg_type, "long")) {
+ // TODO: Java long is 64-bit actually
+ out->j = mp_obj_get_int(arg);
+ } else {
+ return false;
+ }
} else {
nlr_raise(mp_obj_new_exception_msg_varg(&mp_type_TypeError, "arg type not supported"));
}