diff options
author | unknown <petr@mysql.com> | 2005-04-11 17:14:40 +0400 |
---|---|---|
committer | unknown <petr@mysql.com> | 2005-04-11 17:14:40 +0400 |
commit | 1e03f61002b2be8ad547772338df4cc87ee61e04 (patch) | |
tree | 1e59fd3f4c6e859120ec801f35e356f123ac2392 /server-tools | |
parent | 3ae32eacc061e91bedf475f82f5fa299dd130ed3 (diff) | |
download | mariadb-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.cc | 18 |
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; |