X-Git-Url: http://sjero.net/git/?p=wget;a=blobdiff_plain;f=src%2Finit.c;h=3e8c8795881de927563d3db0ac8d4e175c93c7f3;hp=51edf647592c98143a3d9c66419de3403b7f0555;hb=0ff9eb47276f0485e7c2e1ed1c014c7c82758ef7;hpb=83b0e389400b03110402d1408fd9610988ba3419 diff --git a/src/init.c b/src/init.c index 51edf647..3e8c8795 100644 --- a/src/init.c +++ b/src/init.c @@ -145,7 +145,7 @@ static struct { { "forcehtml", &opt.force_html, cmd_boolean }, { "ftpproxy", &opt.ftp_proxy, cmd_string }, { "glob", &opt.ftp_glob, cmd_boolean }, - { "header", NULL, cmd_spec_header }, + { "header", &opt.user_headers, cmd_spec_header }, { "htmlextension", &opt.html_extension, cmd_boolean }, { "htmlify", NULL, cmd_spec_htmlify }, { "httpkeepalive", &opt.http_keep_alive, cmd_boolean }, @@ -1040,32 +1040,13 @@ cmd_spec_dirstruct (const char *com, const char *val, void *closure) static int cmd_spec_header (const char *com, const char *val, void *closure) { - if (!*val) + if (!check_user_specified_header (val)) { - /* Empty header means reset headers. */ - xfree_null (opt.user_header); - opt.user_header = NULL; - } - else - { - int i; - - if (!check_user_specified_header (val)) - { - fprintf (stderr, _("%s: %s: Invalid header `%s'.\n"), - exec_name, com, val); - return 0; - } - i = opt.user_header ? strlen (opt.user_header) : 0; - opt.user_header = (char *)xrealloc (opt.user_header, i + strlen (val) - + 2 + 1); - strcpy (opt.user_header + i, val); - i += strlen (val); - opt.user_header[i++] = '\r'; - opt.user_header[i++] = '\n'; - opt.user_header[i] = '\0'; + fprintf (stderr, _("%s: %s: Invalid header `%s'.\n"), + exec_name, com, val); + return 0; } - return 1; + return cmd_vector (com, val, closure); } static int