Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Assertion 'jerry_value_is_function(jonuncaughtexception)' failed in iotjs_uncaught_exception #1349

Closed
renatahodovan opened this issue Dec 5, 2017 · 0 comments · Fixed by #1496
Labels

Comments

@renatahodovan
Copy link
Contributor

IoT.js version:
Checked revision: a6b2d75
Build command: tools/build.py --buildtype debug --no-snapshot --no-check-test
OS:
Ubuntu 17.10
Test case:
var dns = require( 'dns' );
var assert = require( 'assert' );
assert.throws(function ( ) { dns.lookup ('localhost', require) } );
       
Backtrace:
uncaughtException: AssertionError: Missing expected exception..
iotjs/src/iotjs_binding_helper.c:28: Assertion 'jerry_value_is_function(jonuncaughtexception)' failed.

(gdb) bt
#0  iotjs_uncaught_exception (jexception=28306) at iotjs/src/iotjs_binding_helper.c:28
#1  0x000055555556f1fa in iotjs_make_callback_with_result (jfunction=23739, jthis=72, jargs=0x7fffffffa660)
    at iotjs/src/iotjs_binding_helper.c:121
#2  0x000055555556f19f in iotjs_make_callback (jfunction=23739, jthis=72, jargs=0x7fffffffa660)
    at iotjs/src/iotjs_binding_helper.c:108
#3  0x0000555555575402 in AfterGetAddrInfo (req=0x55555588c830, status=0, res=0x7ffff0001be0)
    at iotjs/src/modules/iotjs_module_dns.c:158
#4  0x00005555555f3198 in uv__getaddrinfo_done (w=0x55555588c858, status=0)
    at iotjs/deps/libtuv/src/unix/getaddrinfo.c:156
#5  0x00005555555fcb88 in uv__work_done (handle=0x55555584a6f0 <default_loop_struct+176>)
    at iotjs/deps/libtuv/src/threadpool.c:261
#6  0x00005555555ee2fc in uv__async_event (loop=0x55555584a640 <default_loop_struct>, w=0x55555584a7e8 <default_loop_struct+424>, 
    nevents=1) at iotjs/deps/libtuv/src/unix/async.c:122
#7  0x00005555555ee475 in uv__async_io (loop=0x55555584a640 <default_loop_struct>, w=0x55555584a7f0 <default_loop_struct+432>, events=1)
    at iotjs/deps/libtuv/src/unix/async.c:162
#8  0x00005555555fbdeb in uv__io_poll (loop=0x55555584a640 <default_loop_struct>, timeout=-1)
    at iotjs/deps/libtuv/src/unix/linux-core.c:389
#9  0x00005555555eeeaa in uv_run (loop=0x55555584a640 <default_loop_struct>, mode=UV_RUN_DEFAULT)
    at iotjs/deps/libtuv/src/unix/core.c:305
#10 0x000055555556cd24 in iotjs_entry (argc=2, argv=0x7fffffffdec8) at iotjs/src/iotjs.c:222
#11 0x000055555556c4ca in main (argc=2, argv=0x7fffffffdec8) at iotjs/iotjs_linux.c:19

Found by Fuzzinator with grammarinator

DanielBallaSZTE pushed a commit to DanielBallaSZTE/iotjs that referenced this issue Feb 16, 2018
There's a special case where if an uncaughtException is thrown, and later a callback function is evaluated it would throw another one.
The correct behaviour for this would be terminating the engine at the first one, and throwing the error.
This patch fixes jerryscript-project#1349

IoT.js-DCO-1.0-Signed-off-by: Daniel Balla dballa@inf.u-szeged.hu
DanielBallaSZTE pushed a commit to DanielBallaSZTE/iotjs that referenced this issue Feb 16, 2018
There's a special case where if an uncaughtException is thrown, and later a callback function is evaluated it would throw another one.
The correct behaviour for this would be terminating the engine at the first one, and throwing the error.
This patch fixes jerryscript-project#1349

IoT.js-DCO-1.0-Signed-off-by: Daniel Balla dballa@inf.u-szeged.hu
DanielBallaSZTE pushed a commit to DanielBallaSZTE/iotjs that referenced this issue Feb 19, 2018
There's a special case where if an uncaughtException is thrown, and later a callback function is evaluated it would throw another one.
The correct behaviour for this would be terminating the engine at the first one, and throwing the error.
This patch fixes jerryscript-project#1349

IoT.js-DCO-1.0-Signed-off-by: Daniel Balla dballa@inf.u-szeged.hu
DanielBallaSZTE pushed a commit to DanielBallaSZTE/iotjs that referenced this issue Feb 19, 2018
There's a special case where if an uncaughtException is thrown, and later a callback function is evaluated it would throw another one.
The correct behaviour for this would be terminating the engine at the first one, and throwing the error.
This patch fixes jerryscript-project#1349

IoT.js-DCO-1.0-Signed-off-by: Daniel Balla dballa@inf.u-szeged.hu
DanielBallaSZTE pushed a commit to DanielBallaSZTE/iotjs that referenced this issue Feb 19, 2018
There's a special case where if an uncaughtException is thrown, and later a callback function is evaluated it would throw another one.
The correct behaviour for this would be terminating the engine at the first one, and throwing the error.
This patch fixes jerryscript-project#1349

IoT.js-DCO-1.0-Signed-off-by: Daniel Balla dballa@inf.u-szeged.hu
DanielBallaSZTE pushed a commit to DanielBallaSZTE/iotjs that referenced this issue Feb 19, 2018
There's a special case where if an uncaughtException is thrown, and later a callback function is evaluated it would throw another one.
The correct behaviour for this would be terminating the engine at the first one, and throwing the error.
This patch fixes jerryscript-project#1349

IoT.js-DCO-1.0-Signed-off-by: Daniel Balla dballa@inf.u-szeged.hu
yichoi pushed a commit that referenced this issue Feb 20, 2018
There's a special case where if an uncaughtException is thrown, and later a callback function is evaluated it would throw another one.
The correct behaviour for this would be terminating the engine at the first one, and throwing the error.
This patch fixes #1349

IoT.js-DCO-1.0-Signed-off-by: Daniel Balla dballa@inf.u-szeged.hu
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants