summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGrissiom <[email protected]>2013-05-15 20:16:03 +0800
committerGrissiom <[email protected]>2013-05-15 20:16:03 +0800
commit60857630c0e3dbcc7cf295e377de9641a0c0a53e (patch)
treec0a9bf801f9bad7959827cc98c9965097990bef8
parentf7d1097e6ba5aa1960afd9b8e1670d141678dc9c (diff)
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.
-rwxr-xr-xbsp/simulator/drivers/serial.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/bsp/simulator/drivers/serial.c b/bsp/simulator/drivers/serial.c
index 8f7567e439..72cbad3baf 100755
--- a/bsp/simulator/drivers/serial.c
+++ b/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;