You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by an...@apache.org on 2019/01/09 10:07:04 UTC

[mynewt-core] 03/08: [wip] sys/console: Add console_write_str

This is an automated email from the ASF dual-hosted git repository.

andk pushed a commit to branch bus-dev-test
in repository https://gitbox.apache.org/repos/asf/mynewt-core.git

commit 0277c991919648ade6cc85434266901f39f61ce1
Author: Andrzej Kaczmarek <an...@codecoup.pl>
AuthorDate: Wed Dec 5 15:11:52 2018 +0100

    [wip] sys/console: Add console_write_str
    
    This is the same as console_write except in assumes input is a
    null-terminated string.
---
 sys/console/full/include/console/console.h    |  1 +
 sys/console/full/src/console.c                | 10 ++++++++++
 sys/console/minimal/include/console/console.h |  1 +
 sys/console/minimal/src/console.c             | 10 ++++++++++
 sys/console/stub/include/console/console.h    |  4 ++++
 5 files changed, 26 insertions(+)

diff --git a/sys/console/full/include/console/console.h b/sys/console/full/include/console/console.h
index bb9f11a..ea6c5ef 100644
--- a/sys/console/full/include/console/console.h
+++ b/sys/console/full/include/console/console.h
@@ -48,6 +48,7 @@ typedef void (*completion_cb)(char *str, console_append_char_cb cb);
 int console_init(console_rx_cb rx_cb);
 int console_is_init(void);
 void console_write(const char *str, int cnt);
+void console_write_str(const char *str);
 #if MYNEWT_VAL(CONSOLE_COMPAT)
 int console_read(char *str, int cnt, int *newline);
 #endif
diff --git a/sys/console/full/src/console.c b/sys/console/full/src/console.c
index 6f996cf..2df2546 100644
--- a/sys/console/full/src/console.c
+++ b/sys/console/full/src/console.c
@@ -112,6 +112,16 @@ console_write(const char *str, int cnt)
     }
 }
 
+void
+console_write_str(const char *str)
+{
+    while (*str) {
+        if (console_out(*str++) == EOF) {
+            break;
+        }
+    }
+}
+
 #if MYNEWT_VAL(CONSOLE_COMPAT)
 int
 console_read(char *str, int cnt, int *newline)
diff --git a/sys/console/minimal/include/console/console.h b/sys/console/minimal/include/console/console.h
index 6c82006..83445e0 100644
--- a/sys/console/minimal/include/console/console.h
+++ b/sys/console/minimal/include/console/console.h
@@ -39,6 +39,7 @@ int console_init(console_rx_cb rx_cb);
 int console_is_init(void);
 
 void console_write(const char *str, int cnt);
+void console_write_str(const char *str);
 #if MYNEWT_VAL(CONSOLE_COMPAT)
 int console_read(char *str, int cnt, int *newline);
 #endif
diff --git a/sys/console/minimal/src/console.c b/sys/console/minimal/src/console.c
index 9f50e90..78a391c 100644
--- a/sys/console/minimal/src/console.c
+++ b/sys/console/minimal/src/console.c
@@ -82,6 +82,16 @@ console_write(const char *str, int cnt)
     }
 }
 
+void
+console_write_str(const char *str)
+{
+    while (*str) {
+        if (console_out(*str++) == EOF) {
+            break;
+        }
+    }
+}
+
 #if MYNEWT_VAL(CONSOLE_COMPAT)
 int
 console_read(char *str, int cnt, int *newline)
diff --git a/sys/console/stub/include/console/console.h b/sys/console/stub/include/console/console.h
index 57c5ab0..b4b360c 100644
--- a/sys/console/stub/include/console/console.h
+++ b/sys/console/stub/include/console/console.h
@@ -54,6 +54,10 @@ console_write(const char *str, int cnt)
 {
 }
 
+static void inline console_write_str(const char *str)
+{
+}
+
 static int inline
 console_read(char *str, int cnt, int *newline)
 {