summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--apps/logfdisp.c4
-rw-r--r--firmware/logf.c9
2 files changed, 7 insertions, 6 deletions
diff --git a/apps/logfdisp.c b/apps/logfdisp.c
index c7f7e74ec4..da711bf1d3 100644
--- a/apps/logfdisp.c
+++ b/apps/logfdisp.c
@@ -190,8 +190,8 @@ bool logfdump(void)
ptr = buffer;
do {
tindex++;
- memcpy(ptr, logfbuffer[tindex], MAX_LOGF_ENTRY-1);
- ptr += MAX_LOGF_ENTRY-1;
+ memcpy(ptr, logfbuffer[tindex], MAX_LOGF_ENTRY);
+ ptr += MAX_LOGF_ENTRY;
if (tindex >= MAX_LOGF_LINES)
tindex = 0;
} while(logfbuffer[tindex][MAX_LOGF_ENTRY] == LOGF_TERMINATE_CONTINUE_LINE);
diff --git a/firmware/logf.c b/firmware/logf.c
index 6e3e532450..02ab79d0a0 100644
--- a/firmware/logf.c
+++ b/firmware/logf.c
@@ -145,16 +145,17 @@ void _logf(const char *format, ...)
while(len > MAX_LOGF_ENTRY)
{
ptr = logfbuffer[logfindex];
- strlcpy(ptr, buf + tlen, MAX_LOGF_ENTRY);
+ memcpy(ptr, buf + tlen, MAX_LOGF_ENTRY);
ptr[MAX_LOGF_ENTRY] = LOGF_TERMINATE_CONTINUE_LINE;
logfindex++;
check_logfindex();
- len -= MAX_LOGF_ENTRY-1;
- tlen += MAX_LOGF_ENTRY-1;
+ len -= MAX_LOGF_ENTRY;
+ tlen += MAX_LOGF_ENTRY;
multiline = true;
}
+
ptr = logfbuffer[logfindex];
- strcpy(ptr, buf + tlen);
+ memcpy(ptr, buf + tlen,len-tlen);
if(len < MAX_LOGF_ENTRY)
/* pad with spaces up to the MAX_LOGF_ENTRY byte border */