From: Frédéric Lécaille <[email protected]>
Make init_peers_frontend() be callable without having to check if
there is something to do or not.
May be backported to 1.5 and newer.
---
src/cfgparse.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/cfgparse.c b/src/cfgparse.c
index 22a3da72..715faaef 100644
--- a/src/cfgparse.c
+++ b/src/cfgparse.c
@@ -492,6 +492,10 @@ static int init_peers_frontend(const char *file, int
linenum,
{
struct proxy *p;
+ if (peers->peers_fe)
+ /* Nothing to do */
+ return 0;
+
p = calloc(1, sizeof *p);
if (!p) {
ha_alert("parsing [%s:%d] : out of memory.\n", file, linenum);
@@ -659,8 +663,7 @@ int cfg_parse_peers(const char *file, int linenum, char
**args, int kwm)
/* Current is local peer, it define a frontend */
newpeer->local = 1;
- if (!curpeers->peers_fe &&
- init_peers_frontend(file, linenum, args[1], curpeers) != 0)
{
+ if (init_peers_frontend(file, linenum, args[1], curpeers) != 0)
{
ha_alert("parsing [%s:%d] : out of memory.\n",
file, linenum);
err_code |= ERR_ALERT | ERR_ABORT;
goto out;
--
2.11.0