X-Git-Url: http://git.droids-corp.org/?p=protos%2Fxbee-avr.git;a=blobdiff_plain;f=cmdline.c;h=736fa52d6d3ce0963f257ab941b7ee95abfae030;hp=0b0c6068d7e734e6b387b1df9d5b56673051ee3e;hb=c17da94fafe8e0fa1a467f0c8fb7922fec8386e5;hpb=21d10011bc4b009d7a09131b955953fa7aba3815 diff --git a/cmdline.c b/cmdline.c index 0b0c606..736fa52 100644 --- a/cmdline.c +++ b/cmdline.c @@ -30,7 +30,6 @@ #include #include #include -#include #include "callout.h" #include "main.h" @@ -137,12 +136,12 @@ void emergency(char c) * it dynamically */ void mylog(struct error * e, ...) { - va_list ap; #ifndef HOST_VERSION u16 stream_flags = stdout->flags; #endif - uint8_t i; - time_h tv; + va_list ap; + uint8_t i, flags; + uint32_t ms; if (e->severity > ERROR_SEVERITY_ERROR) { if (xbeeboard.log_level < e->severity) @@ -156,8 +155,11 @@ void mylog(struct error * e, ...) } va_start(ap, e); - tv = time_get_time(); - printf_P(PSTR("%d.%.3d: "), (int)tv.s, (int)(tv.us/1000UL)); + IRQ_LOCK(flags); + ms = global_ms; + IRQ_UNLOCK(flags); + + printf_P(PSTR("%d.%.3d: "), (int)(ms/1000UL), (int)(ms%1000UL)); vfprintf_P(stdout, e->text, ap); printf_P(PSTR("\r\n"));