aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-extended/collectd/collectd/0005-Disable-new-gcc8-warnings.patch
blob: b12690b32701c77c869cd51d9258c80d3fbc14d0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
From d65e48b68076d5b304e6d865967003ae1fea0e6c Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 9 May 2018 21:45:38 -0700
Subject: [PATCH] Disable new gcc8 warnings

GCC seems to be not able to detect the checks for size are
already in place

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
Upstream-Status: Submitted [https://github.com/collectd/collectd/pull/2768]
 src/libcollectdclient/network_parse.c | 7 +++++++
 src/write_sensu.c                     | 7 +++++++
 2 files changed, 14 insertions(+)

diff --git a/src/libcollectdclient/network_parse.c b/src/libcollectdclient/network_parse.c
index 2365ab0a..79e6ed96 100644
--- a/src/libcollectdclient/network_parse.c
+++ b/src/libcollectdclient/network_parse.c
@@ -163,6 +163,11 @@ static int parse_int(void *payload, size_t payload_size, uint64_t *out) {
   return 0;
 }
 
+#pragma GCC diagnostic push
+#if __GNUC__ == 8
+#pragma GCC diagnostic ignored "-Wstringop-truncation"
+#endif
+
 static int parse_string(void *payload, size_t payload_size, char *out,
                         size_t out_size) {
   char *in = payload;
@@ -175,6 +180,8 @@ static int parse_string(void *payload, size_t payload_size, char *out,
   return 0;
 }
 
+#pragma GCC diagnostic pop
+
 static int parse_identifier(uint16_t type, void *payload, size_t payload_size,
                             lcc_value_list_t *state) {
   char buf[LCC_NAME_LEN];
diff --git a/src/write_sensu.c b/src/write_sensu.c
index ce23e654..63e1f599 100644
--- a/src/write_sensu.c
+++ b/src/write_sensu.c
@@ -569,6 +569,11 @@ static char *sensu_value_to_json(struct sensu_host const *host, /* {{{ */
   return ret_str;
 } /* }}} char *sensu_value_to_json */
 
+#pragma GCC diagnostic push
+#if __GNUC__ == 8
+#pragma GCC diagnostic ignored "-Wstringop-overflow"
+#pragma GCC diagnostic ignored "-Wstringop-truncation"
+#endif
 /*
  * Uses replace_str2() implementation from
  * http://creativeandcritical.net/str-replace-c/
@@ -631,6 +636,8 @@ static char *replace_str(const char *str, const char *old, /* {{{ */
   return ret;
 } /* }}} char *replace_str */
 
+#pragma GCC diagnostic pop
+
 static char *replace_json_reserved(const char *message) /* {{{ */
 {
   char *msg = replace_str(message, "\\", "\\\\");