summaryrefslogtreecommitdiff
path: root/client/mysqlshow.c
diff options
context:
space:
mode:
authorMonty <monty@mariadb.org>2021-02-05 14:57:46 +0200
committerMonty <monty@mariadb.org>2021-02-08 12:16:29 +0200
commit5d6ad2ad66a677b67f2377d7665d6c140dd93323 (patch)
tree85a54b1a982beb401f04d5bcb621a1166b33b653 /client/mysqlshow.c
parente30a3048dacca5180e8d7b2934d0b1fe44b4f383 (diff)
downloadmariadb-git-5d6ad2ad66a677b67f2377d7665d6c140dd93323.tar.gz
Added 'const' to arguments in get_one_option and find_typeset()
One should not change the program arguments! This change also reduces warnings from the icc compiler. Almost all changes are just syntax changes (adding const to 'get_one_option function' declarations). Other changes: - Added a few cast of 'argument' from 'const char*' to 'char *'. This was mainly in calls to 'external' functions we don't have control of. - Ensure that all reset of 'password command line argument' are similar. (In almost all cases it was just adding a comment and a cast) - In mysqlbinlog.cc and mysqld.cc there was a few cases that changed the command line argument. These places where changed to instead allocate the option in a MEM_ROOT to avoid changing the argument. Some of this code was changed to ensure that different programs did parsing the same way. Added a test case for the changes in mysqlbinlog.cc - Changed a few variables that took their value from command line options from 'char *' to 'const char *'.
Diffstat (limited to 'client/mysqlshow.c')
-rw-r--r--client/mysqlshow.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/client/mysqlshow.c b/client/mysqlshow.c
index 2b0cae6dc98..a89f4eb1dd2 100644
--- a/client/mysqlshow.c
+++ b/client/mysqlshow.c
@@ -289,7 +289,7 @@ are shown.");
static my_bool
-get_one_option(const struct my_option *opt, char *argument,
+get_one_option(const struct my_option *opt, const char *argument,
const char *filename __attribute__((unused)))
{
switch(opt->id) {
@@ -301,10 +301,15 @@ get_one_option(const struct my_option *opt, char *argument,
argument= (char*) ""; /* Don't require password */
if (argument)
{
- char *start=argument;
+ /*
+ One should not really change the argument, but we make an
+ exception for passwords
+ */
+ char *start= (char*) argument;
my_free(opt_password);
opt_password=my_strdup(PSI_NOT_INSTRUMENTED, argument, MYF(MY_FAE));
- while (*argument) *argument++= 'x'; /* Destroy argument */
+ while (*argument)
+ *(char*) argument++= 'x'; /* Destroy argument */
if (*start)
start[1]=0; /* Cut length of argument */
tty_password= 0;