Closed renatahodovan closed 9 years ago
IoT.js rev : 7f7d150 Jerry rev : a00079e Build : x86_64-linux, debug
var gpio = require("gpio"); gpio.writePin("hello","hello","hello");
It's probably similar to #224.
iotjs: iotjs/src/iotjs_module_gpioctl.cpp:165: bool iotjs::___WritePin_wrap(iotjs::JHandlerInfo&): Assertion `handler.GetArg(0)->IsNumber()' failed. Program received signal SIGABRT, Aborted. 0x00007ffff720f267 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55 55 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. (gdb) bt #0 0x00007ffff720f267 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55 #1 0x00007ffff7210eca in __GI_abort () at abort.c:89 #2 0x00007ffff720803d in __assert_fail_base (fmt=0x7ffff736a028 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x523939 "handler.GetArg(0)->IsNumber()", file=file@entry=0x523880 "iotjs/src/iotjs_module_gpioctl.cpp", line=line@entry=165, function=function@entry=0x523d60 <iotjs::___WritePin_wrap(iotjs::JHandlerInfo&)::__PRETTY_FUNCTION__> "bool iotjs::___WritePin_wrap(iotjs::JHandlerInfo&)") at assert.c:92 #3 0x00007ffff72080f2 in __GI___assert_fail (assertion=0x523939 "handler.GetArg(0)->IsNumber()", file=0x523880 "iotjs/src/iotjs_module_gpioctl.cpp", line=165, function=0x523d60 <iotjs::___WritePin_wrap(iotjs::JHandlerInfo&)::__PRETTY_FUNCTION__> "bool iotjs::___WritePin_wrap(iotjs::JHandlerInfo&)") at assert.c:101 #4 0x000000000042afbe in iotjs::___WritePin_wrap (handler=...) at iotjs/src/iotjs_module_gpioctl.cpp:165 #5 0x000000000042af07 in iotjs::WritePin (function_obj_p=0x775158 <mem_heap+40344>, this_p=0x7fffffffc200, ret_val_p=0x7fffffffc1f0, args_p=0x7aa580 <mem_heap+258496>, args_cnt=3) at iotjs/src/iotjs_module_gpioctl.cpp:163 #6 0x00000000004342e6 in jerry_dispatch_external_function (function_object_p=0x775158 <mem_heap+40344>, handler_p=4370065, this_arg_value=24959, arg_collection_p=0x7777e8 <mem_heap+50216>) at iotjs/deps/jerry/jerry-core/jerry.cpp:671 #7 0x000000000048f6d7 in ecma_op_function_call (func_obj_p=0x775158 <mem_heap+40344>, this_arg_value=24959, arg_collection_p=0x7777e8 <mem_heap+50216>) at iotjs/deps/jerry/jerry-core/ecma/operations/ecma-function-object.cpp:807 #8 0x00000000004a9ae2 in opfunc_call_n (instr=..., frame_ctx_p=0x7fffffffc3d0) at iotjs/deps/jerry/jerry-core/vm/opcodes.cpp:819 #9 0x000000000043892d in vm_loop (frame_ctx_p=0x7fffffffc3d0, run_scope_p=0x0) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:484 #10 0x0000000000438bc7 in vm_run_from_pos (instrs_p=0x778108 <mem_heap+52552>, start_pos=333, this_binding_value=25983, lex_env_p=0x777cc0 <mem_heap+51456>, is_strict=false, is_eval_code=false) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:575 #11 0x000000000048f5c9 in ecma_op_function_call (func_obj_p=0x779fb8 <mem_heap+60408>, this_arg_value=25983, arg_collection_p=0x777de8 <mem_heap+51752>) at iotjs/deps/jerry/jerry-core/ecma/operations/ecma-function-object.cpp:773 #12 0x00000000004a9ae2 in opfunc_call_n (instr=..., frame_ctx_p=0x7fffffffc630) at iotjs/deps/jerry/jerry-core/vm/opcodes.cpp:819 #13 0x000000000043892d in vm_loop (frame_ctx_p=0x7fffffffc630, run_scope_p=0x0) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:484 #14 0x0000000000438bc7 in vm_run_from_pos (instrs_p=0x776d48 <mem_heap+47496>, start_pos=9, this_binding_value=23071, lex_env_p=0x777e30 <mem_heap+51824>, is_strict=false, is_eval_code=false) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:575 #15 0x000000000048f5c9 in ecma_op_function_call (func_obj_p=0x777c78 <mem_heap+51384>, this_arg_value=23071, arg_collection_p=0x777e00 <mem_heap+51776>) at iotjs/deps/jerry/jerry-core/ecma/operations/ecma-function-object.cpp:773 #16 0x000000000048f248 in ecma_op_function_call_array_args (func_obj_p=0x777c78 <mem_heap+51384>, this_arg_value=23071, arguments_list_p=0x7aa644 <mem_heap+258692>, arguments_list_len=3) at iotjs/deps/jerry/jerry-core/ecma/operations/ecma-function-object.cpp:678 #17 0x000000000044f02c in ecma_builtin_function_prototype_object_call (this_arg=25695, arguments_list_p=0x7aa640 <mem_heap+258688>, arguments_number=4) at iotjs/deps/jerry/jerry-core/ecma/builtin-objects/ecma-builtin-function-prototype.cpp:198 #18 0x000000000044ea1b in ecma_builtin_function_prototype_dispatch_routine (builtin_routine_id=195, this_arg_value=25695, arguments_list=0x7aa640 <mem_heap+258688>, arguments_number=4) at iotjs/deps/jerry/jerry-core/ecma/builtin-objects/ecma-builtin-function-prototype.inc.h:63 #19 0x0000000000440f13 in ecma_builtin_dispatch_routine (builtin_object_id=ECMA_BUILTIN_ID_FUNCTION_PROTOTYPE, builtin_routine_id=195, this_arg_value=25695, arguments_list=0x7aa640 <mem_heap+258688>, arguments_number=4) at iotjs/deps/jerry/jerry-core/ecma/builtin-objects/ecma-builtins.inc.h:108 #20 0x0000000000440699 in ecma_builtin_dispatch_call (obj_p=0x770f70 <mem_heap+23472>, this_arg_value=25695, arg_collection_p=0x778078 <mem_heap+52408>) at iotjs/deps/jerry/jerry-core/ecma/builtin-objects/ecma-builtins.cpp:438 #21 0x000000000048f652 in ecma_op_function_call (func_obj_p=0x770f70 <mem_heap+23472>, this_arg_value=25695, arg_collection_p=0x778078 <mem_heap+52408>) at iotjs/deps/jerry/jerry-core/ecma/operations/ecma-function-object.cpp:794 #22 0x00000000004a9ae2 in opfunc_call_n (instr=..., frame_ctx_p=0x7fffffffcae0) at iotjs/deps/jerry/jerry-core/vm/opcodes.cpp:819 #23 0x000000000043892d in vm_loop (frame_ctx_p=0x7fffffffcae0, run_scope_p=0x0) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:484 #24 0x0000000000438bc7 in vm_run_from_pos (instrs_p=0x772308 <mem_heap+28488>, start_pos=457, this_binding_value=23071, lex_env_p=0x7768d0 <mem_heap+46352>, is_strict=false, is_eval_code=false) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:575 #25 0x000000000048f5c9 in ecma_op_function_call (func_obj_p=0x7765e8 <mem_heap+45608>, this_arg_value=23071, arg_collection_p=0x776878 <mem_heap+46264>) at iotjs/deps/jerry/jerry-core/ecma/operations/ecma-function-object.cpp:773 #26 0x00000000004a9ae2 in opfunc_call_n (instr=..., frame_ctx_p=0x7fffffffcd40) at iotjs/deps/jerry/jerry-core/vm/opcodes.cpp:819 #27 0x000000000043892d in vm_loop (frame_ctx_p=0x7fffffffcd40, run_scope_p=0x0) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:484 #28 0x0000000000438bc7 in vm_run_from_pos (instrs_p=0x772308 <mem_heap+28488>, start_pos=383, this_binding_value=15947, lex_env_p=0x772178 <mem_heap+28088>, is_strict=false, is_eval_code=false) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:575 #29 0x000000000048f5c9 in ecma_op_function_call (func_obj_p=0x776560 <mem_heap+45472>, this_arg_value=15947, arg_collection_p=0x770fc0 <mem_heap+23552>) at iotjs/deps/jerry/jerry-core/ecma/operations/ecma-function-object.cpp:773 #30 0x00000000004a9ae2 in opfunc_call_n (instr=..., frame_ctx_p=0x7fffffffcfa0) at iotjs/deps/jerry/jerry-core/vm/opcodes.cpp:819 #31 0x000000000043892d in vm_loop (frame_ctx_p=0x7fffffffcfa0, run_scope_p=0x0) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:484 #32 0x0000000000438bc7 in vm_run_from_pos (instrs_p=0x772308 <mem_heap+28488>, start_pos=511, this_binding_value=15947, lex_env_p=0x771fb0 <mem_heap+27632>, is_strict=false, is_eval_code=false) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:575 #33 0x000000000048f5c9 in ecma_op_function_call (func_obj_p=0x776660 <mem_heap+45728>, this_arg_value=15947, arg_collection_p=0x76d910 <mem_heap+9552>) at iotjs/deps/jerry/jerry-core/ecma/operations/ecma-function-object.cpp:773 #34 0x00000000004a9ae2 in opfunc_call_n (instr=..., frame_ctx_p=0x7fffffffd200) at iotjs/deps/jerry/jerry-core/vm/opcodes.cpp:819 #35 0x000000000043892d in vm_loop (frame_ctx_p=0x7fffffffd200, run_scope_p=0x0) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:484 #36 0x0000000000438bc7 in vm_run_from_pos (instrs_p=0x76c408 <mem_heap+4168>, start_pos=11, this_binding_value=523, lex_env_p=0x76d818 <mem_heap+9304>, is_strict=false, is_eval_code=false) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:575 #37 0x000000000048f5c9 in ecma_op_function_call (func_obj_p=0x76d120 <mem_heap+7520>, this_arg_value=4, arg_collection_p=0x76d810 <mem_heap+9296>) at iotjs/deps/jerry/jerry-core/ecma/operations/ecma-function-object.cpp:773 #38 0x00000000004a9ae2 in opfunc_call_n (instr=..., frame_ctx_p=0x7fffffffd460) at iotjs/deps/jerry/jerry-core/vm/opcodes.cpp:819 #39 0x000000000043892d in vm_loop (frame_ctx_p=0x7fffffffd460, run_scope_p=0x0) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:484 #40 0x0000000000438bc7 in vm_run_from_pos (instrs_p=0x76c408 <mem_heap+4168>, start_pos=7, this_binding_value=523, lex_env_p=0x76d0f8 <mem_heap+7480>, is_strict=false, is_eval_code=false) at iotjs/deps/jerry/jerry-core/vm/vm.cpp:575 #41 0x000000000048f5c9 in ecma_op_function_call (func_obj_p=0x76d088 <mem_heap+7368>, this_arg_value=523, arg_collection_p=0x76c158 <mem_heap+3480>) at iotjs/deps/jerry/jerry-core/ecma/operations/ecma-function-object.cpp:773 #42 0x0000000000434aca in jerry_api_invoke_function (is_invoke_as_constructor=false, function_object_p=0x76d088 <mem_heap+7368>, this_arg_p=0x76b7d0 <mem_heap+1040>, retval_p=0x7fffffffd6e0, args_p=0x7ae130, args_count=1) at iotjs/deps/jerry/jerry-core/jerry.cpp:1108 #43 0x0000000000434bfa in jerry_api_call_function (function_object_p=0x76d088 <mem_heap+7368>, this_arg_p=0x76b7d0 <mem_heap+1040>, retval_p=0x7fffffffd6e0, args_p=0x7ae130, args_count=1) at iotjs/deps/jerry/jerry-core/jerry.cpp:1176 #44 0x00000000004242b9 in iotjs::JObject::Call (this=0x7fffffffd760, this_=..., arg=...) at iotjs/src/iotjs_binding.cpp:403 #45 0x0000000000422715 in iotjs::RunIoTjs (process=0x7ae0d0) at iotjs/src/iotjs.cpp:90 #46 0x00000000004227f9 in iotjs::StartIoTjs (env=0x7ae010) at iotjs/src/iotjs.cpp:115 #47 0x0000000000422987 in iotjs::Start (argc=2, argv=0x7fffffffd978) at iotjs/src/iotjs.cpp:155 #48 0x0000000000422a63 in iotjs_entry (argc=2, argv=0x7fffffffd978) at iotjs/src/iotjs.cpp:178 #49 0x00000000004224b6 in main (argc=2, argv=0x7fffffffd978) at iotjs/iotjs_linux.cpp:22
Current GPIO implementation in master is not complete. Let's see this after #215 landed.
Closing as fixed by #215.
Version:
Test case:
Note:
Backtrace: