]> sjero.net Git - wget/commitdiff
Cleanup cmd_string_uppercase
authorÁngel González <keisial@gmail.com>
Fri, 21 Jun 2013 22:06:31 +0000 (00:06 +0200)
committerGiuseppe Scrivano <gscrivano@gnu.org>
Sat, 22 Jun 2013 12:06:06 +0000 (14:06 +0200)
src/ChangeLog
src/init.c

index 4299ac5c5ae5fd36093f16a1c54c9f75ed57d8e7..bd191763409d33e9dbb8b21cab40f82e30fc76b4 100644 (file)
@@ -1,3 +1,7 @@
+2013-06-22  Ángel González <keisial@gmail.com>
+
+       * init.c (cmd_string_uppercase): Rewrite function.
+
 2013-06-19  Tim Ruehsen  <tim.ruehsen@gmx.de>
 
        * connect.c (socket_ip_address): zero out ip address structure to
index 54a291987755fa04228ab062df376d1db63fef6e..1c4432b56b79ab350b9f09413a6e979fe3bd6c69 100644 (file)
@@ -965,15 +965,16 @@ cmd_string (const char *com, const char *val, void *place)
 static bool
 cmd_string_uppercase (const char *com, const char *val, void *place)
 {
-  char *q;
-  bool ret = cmd_string (com, val, place);
-  q = *((char **) place);
-  if (!ret || q == NULL)
-    return false;
+  char *q, **pstring;
+  pstring = (char **)place;
+  xfree_null (*pstring);
+
+  *pstring = xmalloc (strlen (val) + 1);
 
-  for ( ;*q; *q++)
-    *q = c_toupper (*q);
+  for (q = *pstring; *val; val++, q++)
+    *q = c_toupper (*val);
 
+  *q = '\0';
   return true;
 }