summaryrefslogtreecommitdiff
path: root/components
diff options
context:
space:
mode:
Diffstat (limited to 'components')
-rw-r--r--components/drivers/tty/n_tty.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/components/drivers/tty/n_tty.c b/components/drivers/tty/n_tty.c
index 5ed7d6a6f8..8b6d1d089f 100644
--- a/components/drivers/tty/n_tty.c
+++ b/components/drivers/tty/n_tty.c
@@ -1436,14 +1436,15 @@ static int canon_copy_from_read_buf(struct tty_struct *tty, char *b, size_t nr)
size_t buf_size = RT_TTY_BUF - tail;
const void *from = read_buf_addr(ldata, tail);
+ size_t temp_n = n;
if (n > buf_size)
{
rt_memcpy(b, from, buf_size);
b += buf_size;
- n -= buf_size;
+ temp_n -= buf_size;
from = ldata->read_buf;
}
- rt_memcpy(b, from, n);
+ rt_memcpy(b, from, temp_n);
if (found)
{