summaryrefslogtreecommitdiff
path: root/components
diff options
context:
space:
mode:
Diffstat (limited to 'components')
-rw-r--r--components/drivers/src/pipe.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/components/drivers/src/pipe.c b/components/drivers/src/pipe.c
index 223337f81b..00630c52eb 100644
--- a/components/drivers/src/pipe.c
+++ b/components/drivers/src/pipe.c
@@ -360,7 +360,11 @@ rt_size_t rt_pipe_read (rt_device_t device, rt_off_t pos, void *buffer, rt_siz
int read_bytes = 0;
rt_pipe_t *pipe = (rt_pipe_t *)device;
- if (device == RT_NULL) return -EINVAL;
+ if (device == RT_NULL)
+ {
+ rt_set_errno(-EINVAL);
+ return 0;
+ }
if (count == 0) return 0;
pbuf = (uint8_t*)buffer;
@@ -384,7 +388,11 @@ rt_size_t rt_pipe_write (rt_device_t device, rt_off_t pos, const void *buffer,
int write_bytes = 0;
rt_pipe_t *pipe = (rt_pipe_t *)device;
- if (device == RT_NULL) return -EINVAL;
+ if (device == RT_NULL)
+ {
+ rt_set_errno(-EINVAL);
+ return 0;
+ }
if (count == 0) return 0;
pbuf = (uint8_t*)buffer;