Blame SOURCES/002-feature-set.patch

23c78e
From 12e59f337f838d647deb8f84850324f785e58824 Mon Sep 17 00:00:00 2001
23c78e
From: Chris Lumens <clumens@redhat.com>
23c78e
Date: Tue, 20 Oct 2020 10:53:26 -0400
23c78e
Subject: [PATCH] Feature: libcrmcommon: Add a spacer formatted output message.
23c78e
23c78e
---
23c78e
 include/crm/common/output_internal.h | 10 +++++++++-
23c78e
 lib/common/output_html.c             |  6 ++++++
23c78e
 lib/common/output_log.c              |  6 ++++++
23c78e
 lib/common/output_text.c             |  6 ++++++
23c78e
 lib/common/output_xml.c              |  6 ++++++
23c78e
 tools/crm_mon_curses.c               |  6 ++++++
23c78e
 6 files changed, 39 insertions(+), 1 deletion(-)
23c78e
23c78e
diff --git a/include/crm/common/output_internal.h b/include/crm/common/output_internal.h
23c78e
index 2874259..e1bd295 100644
23c78e
--- a/include/crm/common/output_internal.h
23c78e
+++ b/include/crm/common/output_internal.h
23c78e
@@ -460,6 +460,14 @@ struct pcmk__output_s {
23c78e
      * \return true if output should be supressed, false otherwise.
23c78e
      */
23c78e
     bool (*is_quiet) (pcmk__output_t *out);
23c78e
+
23c78e
+    /*!
23c78e
+     * \internal
23c78e
+     * \brief Output a spacer.  Not all formatter will do this.
23c78e
+     *
23c78e
+     * \param[in] out The output functions structure.
23c78e
+     */
23c78e
+    void (*spacer) (pcmk__output_t *out);
23c78e
 };
23c78e
 
23c78e
 /*!
23c78e
@@ -745,7 +753,7 @@ G_GNUC_NULL_TERMINATED;
23c78e
 
23c78e
 #define PCMK__OUTPUT_SPACER_IF(out_obj, cond)   \
23c78e
     if (cond) {                                 \
23c78e
-        out_obj->info(out_obj, "%s", "");       \
23c78e
+        out->spacer(out);                       \
23c78e
     }
23c78e
 
23c78e
 #define PCMK__OUTPUT_LIST_HEADER(out_obj, cond, retcode, title...)  \
23c78e
diff --git a/lib/common/output_html.c b/lib/common/output_html.c
23c78e
index 156887d..e354b5d 100644
23c78e
--- a/lib/common/output_html.c
23c78e
+++ b/lib/common/output_html.c
23c78e
@@ -368,6 +368,11 @@ html_is_quiet(pcmk__output_t *out) {
23c78e
     return false;
23c78e
 }
23c78e
 
23c78e
+static void
23c78e
+html_spacer(pcmk__output_t *out) {
23c78e
+    pcmk__output_create_xml_node(out, "br");
23c78e
+}
23c78e
+
23c78e
 pcmk__output_t *
23c78e
 pcmk__mk_html_output(char **argv) {
23c78e
     pcmk__output_t *retval = calloc(1, sizeof(pcmk__output_t));
23c78e
@@ -399,6 +404,7 @@ pcmk__mk_html_output(char **argv) {
23c78e
     retval->end_list = html_end_list;
23c78e
 
23c78e
     retval->is_quiet = html_is_quiet;
23c78e
+    retval->spacer = html_spacer;
23c78e
 
23c78e
     return retval;
23c78e
 }
23c78e
diff --git a/lib/common/output_log.c b/lib/common/output_log.c
23c78e
index fd13c89..6336fa2 100644
23c78e
--- a/lib/common/output_log.c
23c78e
+++ b/lib/common/output_log.c
23c78e
@@ -226,6 +226,11 @@ log_is_quiet(pcmk__output_t *out) {
23c78e
     return false;
23c78e
 }
23c78e
 
23c78e
+static void
23c78e
+log_spacer(pcmk__output_t *out) {
23c78e
+    /* This function intentionally left blank */
23c78e
+}
23c78e
+
23c78e
 pcmk__output_t *
23c78e
 pcmk__mk_log_output(char **argv) {
23c78e
     pcmk__output_t *retval = calloc(1, sizeof(pcmk__output_t));
23c78e
@@ -256,6 +261,7 @@ pcmk__mk_log_output(char **argv) {
23c78e
     retval->end_list = log_end_list;
23c78e
 
23c78e
     retval->is_quiet = log_is_quiet;
23c78e
+    retval->spacer = log_spacer;
23c78e
 
23c78e
     return retval;
23c78e
 }
23c78e
diff --git a/lib/common/output_text.c b/lib/common/output_text.c
23c78e
index 9b3c09a..3432505 100644
23c78e
--- a/lib/common/output_text.c
23c78e
+++ b/lib/common/output_text.c
23c78e
@@ -244,6 +244,11 @@ text_is_quiet(pcmk__output_t *out) {
23c78e
     return out->quiet;
23c78e
 }
23c78e
 
23c78e
+static void
23c78e
+text_spacer(pcmk__output_t *out) {
23c78e
+    fprintf(out->dest, "\n");
23c78e
+}
23c78e
+
23c78e
 pcmk__output_t *
23c78e
 pcmk__mk_text_output(char **argv) {
23c78e
     pcmk__output_t *retval = calloc(1, sizeof(pcmk__output_t));
23c78e
@@ -275,6 +280,7 @@ pcmk__mk_text_output(char **argv) {
23c78e
     retval->end_list = text_end_list;
23c78e
 
23c78e
     retval->is_quiet = text_is_quiet;
23c78e
+    retval->spacer = text_spacer;
23c78e
 
23c78e
     return retval;
23c78e
 }
23c78e
diff --git a/lib/common/output_xml.c b/lib/common/output_xml.c
23c78e
index 9a08d20..1710fac 100644
23c78e
--- a/lib/common/output_xml.c
23c78e
+++ b/lib/common/output_xml.c
23c78e
@@ -376,6 +376,11 @@ xml_is_quiet(pcmk__output_t *out) {
23c78e
     return false;
23c78e
 }
23c78e
 
23c78e
+static void
23c78e
+xml_spacer(pcmk__output_t *out) {
23c78e
+    /* This function intentionally left blank */
23c78e
+}
23c78e
+
23c78e
 pcmk__output_t *
23c78e
 pcmk__mk_xml_output(char **argv) {
23c78e
     pcmk__output_t *retval = calloc(1, sizeof(pcmk__output_t));
23c78e
@@ -407,6 +412,7 @@ pcmk__mk_xml_output(char **argv) {
23c78e
     retval->end_list = xml_end_list;
23c78e
 
23c78e
     retval->is_quiet = xml_is_quiet;
23c78e
+    retval->spacer = xml_spacer;
23c78e
 
23c78e
     return retval;
23c78e
 }
23c78e
diff --git a/tools/crm_mon_curses.c b/tools/crm_mon_curses.c
23c78e
index 2c092df..8a08578 100644
23c78e
--- a/tools/crm_mon_curses.c
23c78e
+++ b/tools/crm_mon_curses.c
23c78e
@@ -247,6 +247,11 @@ curses_is_quiet(pcmk__output_t *out) {
23c78e
     return out->quiet;
23c78e
 }
23c78e
 
23c78e
+static void
23c78e
+curses_spacer(pcmk__output_t *out) {
23c78e
+    addch('\n');
23c78e
+}
23c78e
+
23c78e
 pcmk__output_t *
23c78e
 crm_mon_mk_curses_output(char **argv) {
23c78e
     pcmk__output_t *retval = calloc(1, sizeof(pcmk__output_t));
23c78e
@@ -278,6 +283,7 @@ crm_mon_mk_curses_output(char **argv) {
23c78e
     retval->end_list = curses_end_list;
23c78e
 
23c78e
     retval->is_quiet = curses_is_quiet;
23c78e
+    retval->spacer = curses_spacer;
23c78e
 
23c78e
     return retval;
23c78e
 }
23c78e
-- 
23c78e
1.8.3.1
23c78e