blob: 91675dfc6d101c9b19b686666839b5d2fcacad8a [file] [log] [blame]
Andrew Geisslerac970dd2021-02-12 15:32:45 -06001From 7c3b1dfb174312594d3317c24ed71c60398f653f Mon Sep 17 00:00:00 2001
2From: Ramon Fried <ramon@neureality.ai>
3Date: Wed, 10 Feb 2021 04:23:36 +0200
4Subject: [PATCH] parser: Fix SIGSEGV caused by using flb_free instead of
5 mk_mem_free
6
7Upstream-Status: Backport (fix only for 1.3.5)
8Signed-off-by: Ramon Fried <ramon@neureality.ai>
9---
10 src/flb_parser.c | 28 ++++++++++++++--------------
11 1 file changed, 14 insertions(+), 14 deletions(-)
12
13diff --git a/src/flb_parser.c b/src/flb_parser.c
14index d35c568..7c20e12 100644
15--- a/src/flb_parser.c
16+++ b/src/flb_parser.c
17@@ -490,7 +490,7 @@ int flb_parser_conf_file(const char *file, struct flb_config *config)
18 MK_RCONF_STR);
19 if (str) {
20 time_keep = flb_utils_bool(str);
21- flb_free(str);
22+ mk_mem_free(str);
23 }
24 else {
25 time_keep = FLB_FALSE;
26@@ -522,23 +522,23 @@ int flb_parser_conf_file(const char *file, struct flb_config *config)
27
28 flb_debug("[parser] new parser registered: %s", name);
29
30- flb_free(name);
31- flb_free(format);
32+ mk_mem_free(name);
33+ mk_mem_free(format);
34
35 if (regex) {
36- flb_free(regex);
37+ mk_mem_free(regex);
38 }
39 if (time_fmt) {
40- flb_free(time_fmt);
41+ mk_mem_free(time_fmt);
42 }
43 if (time_key) {
44- flb_free(time_key);
45+ mk_mem_free(time_key);
46 }
47 if (time_offset) {
48- flb_free(time_offset);
49+ mk_mem_free(time_offset);
50 }
51 if (types_str) {
52- flb_free(types_str);
53+ mk_mem_free(types_str);
54 }
55
56 decoders = NULL;
57@@ -548,19 +548,19 @@ int flb_parser_conf_file(const char *file, struct flb_config *config)
58 return 0;
59
60 fconf_error:
61- flb_free(name);
62- flb_free(format);
63+ mk_mem_free(name);
64+ mk_mem_free(format);
65 if (regex) {
66- flb_free(regex);
67+ mk_mem_free(regex);
68 }
69 if (time_fmt) {
70- flb_free(time_fmt);
71+ mk_mem_free(time_fmt);
72 }
73 if (time_key) {
74- flb_free(time_key);
75+ mk_mem_free(time_key);
76 }
77 if (types_str) {
78- flb_free(types_str);
79+ mk_mem_free(types_str);
80 }
81 if (decoders) {
82 flb_parser_decoder_list_destroy(decoders);