aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/src
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2010-01-15 15:22:36 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2010-01-15 15:22:36 +0000
commiteb9546632062a0a4747721869674922e2b6902af (patch)
tree0e87ec74bda60fca3d6880135d17ba71fae6dda3 /os/hal/src
parent0c400f9a18986d1e31cc2d48739013b683002804 (diff)
downloadChibiOS-eb9546632062a0a4747721869674922e2b6902af.tar.gz
ChibiOS-eb9546632062a0a4747721869674922e2b6902af.tar.bz2
ChibiOS-eb9546632062a0a4747721869674922e2b6902af.zip
Fixed bug 2932922.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@1513 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/hal/src')
-rw-r--r--os/hal/src/serial.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/os/hal/src/serial.c b/os/hal/src/serial.c
index 54db8e95d..1372d5acc 100644
--- a/os/hal/src/serial.c
+++ b/os/hal/src/serial.c
@@ -141,7 +141,7 @@ void sdObjectInit(SerialDriver *sdp, qnotify_t inotify, qnotify_t onotify) {
*/
void sdStart(SerialDriver *sdp, const SerialConfig *config) {
- chDbgCheck((sdp != NULL) && (config != NULL), "sdStart");
+ chDbgCheck(sdp != NULL, "sdStart");
chSysLock();
chDbgAssert((sdp->sd.state == SD_STOP) || (sdp->sd.state == SD_READY),
@@ -251,8 +251,10 @@ sdflags_t sdGetAndClearFlags(SerialDriver *sdp) {
chDbgCheck(sdp != NULL, "sdGetAndClearFlags");
+ chSysLock();
mask = sdp->sd.flags;
sdp->sd.flags = SD_NO_ERROR;
+ chSysUnlock();
return mask;
}