summaryrefslogtreecommitdiffstatshomepage
path: root/stmhal/timer.c
diff options
context:
space:
mode:
authorPaul Sokolovsky <pfalcon@users.sourceforge.net>2014-12-06 14:29:09 +0200
committerDamien George <damien.p.george@gmail.com>2014-12-08 20:25:49 +0000
commit46c3ab20049af16e97863e90e5761fae329f872a (patch)
treecbe6230dcad6972d7d50c6d08c4e4c4da215abb1 /stmhal/timer.c
parentd0caaadaeea48e8f76dca3125a2dea3465a58416 (diff)
downloadmicropython-46c3ab20049af16e97863e90e5761fae329f872a.tar.gz
micropython-46c3ab20049af16e97863e90e5761fae329f872a.zip
modsys: Add sys.print_exception(exc, file=sys.stdout) function.
The function is modeled after traceback.print_exception(), but unbloated, and put into existing module to save overhead on adding another module. Compliant traceback.print_exception() is intended to be implemented in micropython-lib in terms of sys.print_exception(). This change required refactoring mp_obj_print_exception() to take pfenv_t interface arguments. Addresses #751.
Diffstat (limited to 'stmhal/timer.c')
-rw-r--r--stmhal/timer.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/stmhal/timer.c b/stmhal/timer.c
index 5c99d51f19..e95fb5f9ef 100644
--- a/stmhal/timer.c
+++ b/stmhal/timer.c
@@ -42,6 +42,7 @@
#include "timer.h"
#include "servo.h"
#include "pin.h"
+#include "pfenv.h"
/// \moduleref pyb
/// \class Timer - periodically call a function
@@ -1245,7 +1246,7 @@ STATIC void timer_handle_irq_channel(pyb_timer_obj_t *tim, uint8_t channel, mp_o
} else {
printf("uncaught exception in Timer(%u) channel %u interrupt handler\n", tim->tim_id, channel);
}
- mp_obj_print_exception((mp_obj_t)nlr.ret_val);
+ mp_obj_print_exception(printf_wrapper, NULL, (mp_obj_t)nlr.ret_val);
}
gc_unlock();
}