From fb8212543a2050d616de0abe048a46d9711df907 Mon Sep 17 00:00:00 2001 From: Mark Riddoch Date: Wed, 5 Feb 2014 10:48:52 +0100 Subject: [PATCH] Fixed issue with MaxScale crash if a configuration unknown section without a type is added. This is Bgzilla bug 378. --- server/core/config.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/server/core/config.c b/server/core/config.c index b48c7905a..221226678 100644 --- a/server/core/config.c +++ b/server/core/config.c @@ -837,17 +837,19 @@ int i; obj = context; while (obj) { - type = config_get_value(obj->parameters, "type"); - if (!strcmp(type, "service")) - param_set = service_params; - else if (!strcmp(type, "server")) - param_set = server_params; - else if (!strcmp(type, "listener")) - param_set = listener_params; - else if (!strcmp(type, "monitor")) - param_set = monitor_params; - else - param_set = NULL; + param_set = NULL; + if (obj->parameters && + (type = config_get_value(obj->parameters, "type"))) + { + if (!strcmp(type, "service")) + param_set = service_params; + else if (!strcmp(type, "server")) + param_set = server_params; + else if (!strcmp(type, "listener")) + param_set = listener_params; + else if (!strcmp(type, "monitor")) + param_set = monitor_params; + } if (param_set != NULL) { params = obj->parameters;