From: Steven Schubiger Date: Wed, 16 Apr 2008 22:35:34 +0000 (+0200) Subject: Use Gnulib's xalloc module in convert.c (and include according header). X-Git-Tag: v1.13~421^2~12^2~28^2~22 X-Git-Url: http://sjero.net/git/?p=wget;a=commitdiff_plain;h=8aefedc7daa02d2035c521e559add2a3a74ab3b7 Use Gnulib's xalloc module in convert.c (and include according header). --- diff --git a/src/convert.c b/src/convert.c index 69d713f8..bf65f53d 100644 --- a/src/convert.c +++ b/src/convert.c @@ -28,6 +28,8 @@ Corresponding Source for a non-source form of such a combination shall include the source code for the parts of OpenSSL used as well as that of the covered work. */ +#define USE_GNULIB_ALLOC + #include "wget.h" #include @@ -87,7 +89,7 @@ convert_all_links (void) cnt = hash_table_count (downloaded_html_set); if (cnt == 0) goto cleanup; - file_array = alloca_array (char *, cnt); + file_array = xcalloc (cnt, sizeof (char *)); string_set_to_array (downloaded_html_set, file_array); for (i = 0; i < cnt; i++) @@ -285,8 +287,8 @@ convert_links (const char *file, struct urlpos *links) DEBUGP (("TO_RELATIVE: %s to %s at position %d in %s.\n", link->url->url, newname, link->pos, file)); - xfree (newname); - xfree (quoted_newname); + free (newname); + free (quoted_newname); ++to_file_count; break; } @@ -304,7 +306,7 @@ convert_links (const char *file, struct urlpos *links) DEBUGP (("TO_COMPLETE: to %s at position %d in %s.\n", newlink, link->pos, file)); - xfree (quoted_newlink); + free (quoted_newlink); ++to_url_count; break; } @@ -688,8 +690,8 @@ dissociate_urls_from_file_mapper (void *key, void *value, void *arg) if (0 == strcmp (mapping_file, file)) { hash_table_remove (dl_url_file_map, mapping_url); - xfree (mapping_url); - xfree (mapping_file); + free (mapping_url); + free (mapping_file); } /* Continue mapping. */ @@ -739,8 +741,8 @@ register_download (const char *url, const char *file) goto url_only; hash_table_remove (dl_file_url_map, file); - xfree (old_file); - xfree (old_url); + free (old_file); + free (old_url); /* Remove all the URLs that point to this file. Yes, there can be more than one such URL, because we store redirections as @@ -780,8 +782,8 @@ register_download (const char *url, const char *file) if (hash_table_get_pair (dl_url_file_map, url, &old_url, &old_file)) { hash_table_remove (dl_url_file_map, url); - xfree (old_url); - xfree (old_file); + free (old_url); + free (old_file); } hash_table_put (dl_url_file_map, xstrdup (url), xstrdup (file)); @@ -817,8 +819,8 @@ register_delete_file (const char *file) return; hash_table_remove (dl_file_url_map, file); - xfree (old_file); - xfree (old_url); + free (old_file); + free (old_url); dissociate_urls_from_file (file); } @@ -948,7 +950,7 @@ downloaded_files_free (void) for (hash_table_iterate (downloaded_files_hash, &iter); hash_table_iter_next (&iter); ) - xfree (iter.key); + free (iter.key); hash_table_destroy (downloaded_files_hash); downloaded_files_hash = NULL; } diff --git a/src/wget.h b/src/wget.h index d8ab0c90..409c71c9 100644 --- a/src/wget.h +++ b/src/wget.h @@ -208,7 +208,11 @@ typedef double SUM_SIZE_INT; #include "options.h" /* Everything uses this, so include them here directly. */ -#include "xmalloc.h" +#ifdef USE_GNULIB_ALLOC +# include "xalloc.h" +#else +# include "xmalloc.h" +#endif /* Likewise for logging functions. */ #include "log.h"