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.
This commit is contained in:
Grissiom 2013-05-15 20:16:03 +08:00
parent f7d1097e6b
commit 60857630c0
1 changed files with 1 additions and 1 deletions

View File

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