pkarashchenko commented on code in PR #6618:
URL: https://github.com/apache/incubator-nuttx/pull/6618#discussion_r922676875


##########
arch/arm/src/common/arm_semi_syslog.c:
##########
@@ -54,15 +52,25 @@ int up_putc(int ch)
 }
 
 /****************************************************************************
- * Name: up_puts
+ * Name: up_nputs
  *
  * Description:
  *   Output a string on the console
  *
  ****************************************************************************/
 
-void up_puts(const char *str)
+void up_nputs(const char *str, size_t len)
 {
-  smh_call(SEMI_SYSLOG_WRITE0, (char *)str);
+  if (len == ~((size_t)0))
+    {
+      smh_call(SEMI_SYSLOG_WRITE0, (char *)str);

Review Comment:
   Yes, but in your changes you assume that string might not be 
null-terminated, so both `*str` and `len > 0` are performed. According to the 
description that you pointed the WRITE0 is: `Writes a null-terminated string to 
the debug channel.`, so the ARM debug interface might become broken. 
   I mean that if we know that string is null-terminated then `len > 0` check 
may be omitted in the default implementation of `up_nputs`.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to