فهرست منبع

simulator: fix serial_write

printf("%s") will print a NULL terminated string, while rt_serial_write
should print buffer for size length. This also fix segfault when the
string is not null terminated but specified by size.
Grissiom 12 سال پیش
والد
کامیت
60857630c0
1فایلهای تغییر یافته به همراه1 افزوده شده و 1 حذف شده
  1. 1 1
      bsp/simulator/drivers/serial.c

+ 1 - 1
bsp/simulator/drivers/serial.c

@@ -164,7 +164,7 @@ static rt_size_t rt_serial_write(rt_device_t dev, rt_off_t pos, const void *buff
 #endif
 
     level = rt_hw_interrupt_disable();
-    printf("%s", (char *)buffer);
+    fwrite(buffer, size, 1, stdout);
 	fflush(stdout);
     rt_hw_interrupt_enable(level);
     return size;