@@ -149,17 +149,26 @@ void (*elog_assert_hook)(const char* expr, const char* func, size_t line);
149
149
150
150
extern void elog_port_output (const char * log , size_t size );
151
151
extern int elog_port_interrupt_get_nest (void );
152
+
153
+ #ifdef ELOG_USING_ISR_LOG
152
154
extern void elog_port_output_lock_isr (void );
153
155
extern void elog_port_output_unlock_isr (void );
156
+ #endif
157
+
154
158
extern void elog_port_output_lock (void );
155
159
extern void elog_port_output_unlock (void );
156
160
157
161
static char * get_log_buf (void )
158
162
{
159
- if (elog_port_interrupt_get_nest () == 0 )
163
+ if (elog_port_interrupt_get_nest () == 0 ) {
160
164
return thread_log_buf ;
161
- else
165
+ } else {
166
+ #ifdef ELOG_USING_ISR_LOG
162
167
return isr_log_buf ;
168
+ #else
169
+ return NULL ;
170
+ #endif
171
+ }
163
172
}
164
173
165
174
/**
@@ -388,8 +397,10 @@ void elog_output_lock(void) {
388
397
elog .output_is_locked_before_enable = true;
389
398
}
390
399
} else {
400
+ #ifdef ELOG_USING_ISR_LOG
391
401
if (elog .output_lock_enabled )
392
402
elog_port_output_lock_isr ();
403
+ #endif
393
404
}
394
405
}
395
406
@@ -405,8 +416,10 @@ void elog_output_unlock(void) {
405
416
elog .output_is_locked_before_enable = false;
406
417
}
407
418
} else {
419
+ #ifdef ELOG_USING_ISR_LOG
408
420
if (elog .output_lock_enabled )
409
421
elog_port_output_unlock_isr ();
422
+ #endif
410
423
}
411
424
}
412
425
@@ -537,6 +550,9 @@ void elog_raw_output(const char *format, ...) {
537
550
}
538
551
539
552
log_buf = get_log_buf ();
553
+ if (log_buf == NULL ) {
554
+ return ;
555
+ }
540
556
541
557
/* args point to the first variable parameter */
542
558
va_start (args , format );
@@ -609,6 +625,9 @@ void elog_output(uint8_t level, const char *tag, const char *file, const char *f
609
625
}
610
626
611
627
log_buf = get_log_buf ();
628
+ if (log_buf == NULL ) {
629
+ return ;
630
+ }
612
631
613
632
/* args point to the first variable parameter */
614
633
va_start (args , format );
@@ -902,6 +921,9 @@ void elog_hexdump(const char *name, uint8_t width, const void *buf, uint16_t siz
902
921
}
903
922
904
923
log_buf = get_log_buf ();
924
+ if (log_buf == NULL ) {
925
+ return ;
926
+ }
905
927
906
928
/* lock output */
907
929
elog_output_lock ();
0 commit comments