Commit 3177ef54 authored by Damien George's avatar Damien George
Browse files

esp8266: In callback helpers, pop nlr_buf on successful call.

nlr_pop must be called if no exception was raised.

Also, return value of these callback helpers is made void because ther
is (currently) no use for it.
parent b67d0988
......@@ -29,22 +29,22 @@
#include "py/obj.h"
#include "py/nlr.h"
mp_obj_t call_function_1_protected(mp_obj_t fun, mp_obj_t arg) {
void call_function_1_protected(mp_obj_t fun, mp_obj_t arg) {
nlr_buf_t nlr;
if (nlr_push(&nlr) == 0) {
return mp_call_function_1(fun, arg);
mp_call_function_1(fun, arg);
nlr_pop();
} else {
mp_obj_print_exception(&mp_plat_print, (mp_obj_t)nlr.ret_val);
return (mp_obj_t)nlr.ret_val;
}
}
mp_obj_t call_function_2_protected(mp_obj_t fun, mp_obj_t arg1, mp_obj_t arg2) {
void call_function_2_protected(mp_obj_t fun, mp_obj_t arg1, mp_obj_t arg2) {
nlr_buf_t nlr;
if (nlr_push(&nlr) == 0) {
return mp_call_function_2(fun, arg1, arg2);
mp_call_function_2(fun, arg1, arg2);
nlr_pop();
} else {
mp_obj_print_exception(&mp_plat_print, (mp_obj_t)nlr.ret_val);
return (mp_obj_t)nlr.ret_val;
}
}
......@@ -25,5 +25,5 @@
* THE SOFTWARE.
*/
mp_obj_t call_function_1_protected(mp_obj_t fun, mp_obj_t arg);
mp_obj_t call_function_2_protected(mp_obj_t fun, mp_obj_t arg1, mp_obj_t arg2);
void call_function_1_protected(mp_obj_t fun, mp_obj_t arg);
void call_function_2_protected(mp_obj_t fun, mp_obj_t arg1, mp_obj_t arg2);
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment