summaryrefslogtreecommitdiff
path: root/server-tools
diff options
context:
space:
mode:
authorunknown <petr@mysql.com>2005-04-11 17:14:40 +0400
committerunknown <petr@mysql.com>2005-04-11 17:14:40 +0400
commit1e03f61002b2be8ad547772338df4cc87ee61e04 (patch)
tree1e59fd3f4c6e859120ec801f35e356f123ac2392 /server-tools
parent3ae32eacc061e91bedf475f82f5fa299dd130ed3 (diff)
downloadmariadb-git-1e03f61002b2be8ad547772338df4cc87ee61e04.tar.gz
Fix for bug #9808
server-tools/instance-manager/commands.cc: check pointer for null before using it
Diffstat (limited to 'server-tools')
-rw-r--r--server-tools/instance-manager/commands.cc18
1 files changed, 12 insertions, 6 deletions
diff --git a/server-tools/instance-manager/commands.cc b/server-tools/instance-manager/commands.cc
index 426f0cc40b2..e1f811ef57d 100644
--- a/server-tools/instance-manager/commands.cc
+++ b/server-tools/instance-manager/commands.cc
@@ -294,13 +294,19 @@ int Show_instance_options::do_command(struct st_net *net,
char *tmp_option, *option_value;
get_dynamic(&(instance->options.options_array), (gptr) &tmp_option, i);
option_value= strchr(tmp_option, '=');
- /* split the option string into two parts */
- *option_value= 0;
+ /* split the option string into two parts if it has a value */
+
position= 0;
- store_to_string(&send_buff, tmp_option + 2, &position);
- store_to_string(&send_buff, option_value + 1, &position);
- /* join name and the value into the same option again */
- *option_value= '=';
+ if (option_value != NULL)
+ {
+ *option_value= 0;
+ store_to_string(&send_buff, tmp_option + 2, &position);
+ store_to_string(&send_buff, option_value + 1, &position);
+ /* join name and the value into the same option again */
+ *option_value= '=';
+ }
+ else store_to_string(&send_buff, tmp_option + 2, &position);
+
if (send_buff.is_error() ||
my_net_write(net, send_buff.buffer, (uint) position))
goto err;