mirror of
https://github.com/mirror/wget.git
synced 2025-01-04 01:10:28 +08:00
[svn] Don't cast return type of malloc/realloc. Assume ANSI C signal handlers.
This commit is contained in:
parent
277e840a0f
commit
908d7a4bce
@ -1,3 +1,8 @@
|
|||||||
|
2005-06-20 Hrvoje Niksic <hniksic@xemacs.org>
|
||||||
|
|
||||||
|
* configure.in: Don't check for the return type of signal
|
||||||
|
handlers; C89 requires it to be void.
|
||||||
|
|
||||||
2005-06-19 Hrvoje Niksic <hniksic@xemacs.org>
|
2005-06-19 Hrvoje Niksic <hniksic@xemacs.org>
|
||||||
|
|
||||||
* aclocal.m4: Remove support for K&R compilers.
|
* aclocal.m4: Remove support for K&R compilers.
|
||||||
|
@ -191,7 +191,6 @@ dnl
|
|||||||
AC_TYPE_SIZE_T
|
AC_TYPE_SIZE_T
|
||||||
AC_TYPE_PID_T
|
AC_TYPE_PID_T
|
||||||
AC_CHECK_TYPES(uint32_t)
|
AC_CHECK_TYPES(uint32_t)
|
||||||
AC_TYPE_SIGNAL
|
|
||||||
AC_CHECK_TYPES(sig_atomic_t, [], [], [
|
AC_CHECK_TYPES(sig_atomic_t, [], [], [
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
@ -1,3 +1,12 @@
|
|||||||
|
2005-06-20 Hrvoje Niksic <hniksic@xemacs.org>
|
||||||
|
|
||||||
|
* all: Return type of signal handlers is `void'. Include signal.h
|
||||||
|
unconditionally.
|
||||||
|
|
||||||
|
* all: Don't explicitly cast values returned by malloc. We no
|
||||||
|
longer support ancient compilers that don't declare malloc, and we
|
||||||
|
never supported C++ builds.
|
||||||
|
|
||||||
2005-06-19 Hrvoje Niksic <hniksic@xemacs.org>
|
2005-06-19 Hrvoje Niksic <hniksic@xemacs.org>
|
||||||
|
|
||||||
* all: Don't declare errno. Include both time.h and sys/time.h,
|
* all: Don't declare errno. Include both time.h and sys/time.h,
|
||||||
|
@ -382,7 +382,7 @@ construct_relative (const char *basefile, const char *linkfile)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Construct LINK as explained above. */
|
/* Construct LINK as explained above. */
|
||||||
link = (char *)xmalloc (3 * basedirs + strlen (linkfile) + 1);
|
link = xmalloc (3 * basedirs + strlen (linkfile) + 1);
|
||||||
for (i = 0; i < basedirs; i++)
|
for (i = 0; i < basedirs; i++)
|
||||||
memcpy (link + 3 * i, "../", 3);
|
memcpy (link + 3 * i, "../", 3);
|
||||||
strcpy (link + 3 * i, linkfile);
|
strcpy (link + 3 * i, linkfile);
|
||||||
@ -985,7 +985,7 @@ html_quote_string (const char *s)
|
|||||||
else if (*s == ' ')
|
else if (*s == ' ')
|
||||||
i += 4; /* #32; */
|
i += 4; /* #32; */
|
||||||
}
|
}
|
||||||
res = (char *)xmalloc (i + 1);
|
res = xmalloc (i + 1);
|
||||||
s = b;
|
s = b;
|
||||||
for (p = res; *s; s++)
|
for (p = res; *s; s++)
|
||||||
{
|
{
|
||||||
|
@ -330,7 +330,7 @@ ftp_parse_unix_ls (const char *file, int ignore_perms)
|
|||||||
default -F output. I believe these cases are very
|
default -F output. I believe these cases are very
|
||||||
rare. */
|
rare. */
|
||||||
fnlen = strlen (tok); /* re-calculate `fnlen' */
|
fnlen = strlen (tok); /* re-calculate `fnlen' */
|
||||||
cur.name = (char *)xmalloc (fnlen + 1);
|
cur.name = xmalloc (fnlen + 1);
|
||||||
memcpy (cur.name, tok, fnlen + 1);
|
memcpy (cur.name, tok, fnlen + 1);
|
||||||
if (fnlen)
|
if (fnlen)
|
||||||
{
|
{
|
||||||
@ -775,14 +775,14 @@ ftp_parse_vms_ls (const char *file)
|
|||||||
/* And put everything into the linked list */
|
/* And put everything into the linked list */
|
||||||
if (!dir)
|
if (!dir)
|
||||||
{
|
{
|
||||||
l = dir = (struct fileinfo *)xmalloc (sizeof (struct fileinfo));
|
l = dir = xnew (struct fileinfo);
|
||||||
memcpy (l, &cur, sizeof (cur));
|
memcpy (l, &cur, sizeof (cur));
|
||||||
l->prev = l->next = NULL;
|
l->prev = l->next = NULL;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
cur.prev = l;
|
cur.prev = l;
|
||||||
l->next = (struct fileinfo *)xmalloc (sizeof (struct fileinfo));
|
l->next = xnew (struct fileinfo);
|
||||||
l = l->next;
|
l = l->next;
|
||||||
memcpy (l, &cur, sizeof (cur));
|
memcpy (l, &cur, sizeof (cur));
|
||||||
l->next = NULL;
|
l->next = NULL;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
/* Hash tables.
|
/* Hash tables.
|
||||||
Copyright (C) 2000, 2001 Free Software Foundation, Inc.
|
Copyright (C) 2000-2003 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GNU Wget.
|
This file is part of GNU Wget.
|
||||||
|
|
||||||
@ -48,8 +48,7 @@ so, delete this exception statement from your version. */
|
|||||||
/* Make do without them. */
|
/* Make do without them. */
|
||||||
# define xnew(x) xmalloc (sizeof (x))
|
# define xnew(x) xmalloc (sizeof (x))
|
||||||
# define xnew_array(type, x) xmalloc (sizeof (type) * (x))
|
# define xnew_array(type, x) xmalloc (sizeof (type) * (x))
|
||||||
# define xmalloc malloc /* or something that exits
|
# define xmalloc malloc
|
||||||
if not enough memory */
|
|
||||||
# define xfree free
|
# define xfree free
|
||||||
# define countof(x) (sizeof (x) / sizeof ((x)[0]))
|
# define countof(x) (sizeof (x) / sizeof ((x)[0]))
|
||||||
# define TOLOWER(x) ('A' <= (x) && (x) <= 'Z' ? (x) - 32 : (x))
|
# define TOLOWER(x) ('A' <= (x) && (x) <= 'Z' ? (x) - 32 : (x))
|
||||||
|
@ -241,7 +241,7 @@ struct pool {
|
|||||||
if (ga_newsize != (sizevar)) \
|
if (ga_newsize != (sizevar)) \
|
||||||
{ \
|
{ \
|
||||||
if (resized) \
|
if (resized) \
|
||||||
basevar = (type *)xrealloc (basevar, ga_newsize * sizeof (type)); \
|
basevar = xrealloc (basevar, ga_newsize * sizeof (type)); \
|
||||||
else \
|
else \
|
||||||
{ \
|
{ \
|
||||||
void *ga_new = xmalloc (ga_newsize * sizeof (type)); \
|
void *ga_new = xmalloc (ga_newsize * sizeof (type)); \
|
||||||
@ -1051,7 +1051,7 @@ test_mapper (struct taginfo *taginfo, void *arg)
|
|||||||
int main ()
|
int main ()
|
||||||
{
|
{
|
||||||
int size = 256;
|
int size = 256;
|
||||||
char *x = (char *)xmalloc (size);
|
char *x = xmalloc (size);
|
||||||
int length = 0;
|
int length = 0;
|
||||||
int read_count;
|
int read_count;
|
||||||
int tag_counter = 0;
|
int tag_counter = 0;
|
||||||
@ -1060,7 +1060,7 @@ int main ()
|
|||||||
{
|
{
|
||||||
length += read_count;
|
length += read_count;
|
||||||
size <<= 1;
|
size <<= 1;
|
||||||
x = (char *)xrealloc (x, size);
|
x = xrealloc (x, size);
|
||||||
}
|
}
|
||||||
|
|
||||||
map_html_tags (x, length, test_mapper, &tag_counter, 0, NULL, NULL);
|
map_html_tags (x, length, test_mapper, &tag_counter, 0, NULL, NULL);
|
||||||
|
16
src/http.c
16
src/http.c
@ -2870,14 +2870,14 @@ digest_authentication_encode (const char *au, const char *user,
|
|||||||
gen_md5_finish (ctx, hash);
|
gen_md5_finish (ctx, hash);
|
||||||
dump_hash (response_digest, hash);
|
dump_hash (response_digest, hash);
|
||||||
|
|
||||||
res = (char*) xmalloc (strlen (user)
|
res = xmalloc (strlen (user)
|
||||||
+ strlen (user)
|
+ strlen (user)
|
||||||
+ strlen (realm)
|
+ strlen (realm)
|
||||||
+ strlen (nonce)
|
+ strlen (nonce)
|
||||||
+ strlen (path)
|
+ strlen (path)
|
||||||
+ 2 * MD5_HASHLEN /*strlen (response_digest)*/
|
+ 2 * MD5_HASHLEN /*strlen (response_digest)*/
|
||||||
+ (opaque ? strlen (opaque) : 0)
|
+ (opaque ? strlen (opaque) : 0)
|
||||||
+ 128);
|
+ 128);
|
||||||
sprintf (res, "Digest \
|
sprintf (res, "Digest \
|
||||||
username=\"%s\", realm=\"%s\", nonce=\"%s\", uri=\"%s\", response=\"%s\"",
|
username=\"%s\", realm=\"%s\", nonce=\"%s\", uri=\"%s\", response=\"%s\"",
|
||||||
user, realm, nonce, path, response_digest);
|
user, realm, nonce, path, response_digest);
|
||||||
|
@ -208,7 +208,7 @@ saved_append_1 (const char *start, const char *end)
|
|||||||
{
|
{
|
||||||
/* Allocate memory and concatenate the old and the new
|
/* Allocate memory and concatenate the old and the new
|
||||||
contents. */
|
contents. */
|
||||||
ln->malloced_line = (char *)xmalloc (old_len + len + 1);
|
ln->malloced_line = xmalloc (old_len + len + 1);
|
||||||
memcpy (ln->malloced_line, ln->static_line,
|
memcpy (ln->malloced_line, ln->static_line,
|
||||||
old_len);
|
old_len);
|
||||||
memcpy (ln->malloced_line + old_len, start, len);
|
memcpy (ln->malloced_line + old_len, start, len);
|
||||||
|
14
src/main.c
14
src/main.c
@ -35,9 +35,7 @@ so, delete this exception statement from your version. */
|
|||||||
# include <unistd.h>
|
# include <unistd.h>
|
||||||
#endif /* HAVE_UNISTD_H */
|
#endif /* HAVE_UNISTD_H */
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#ifdef HAVE_SIGNAL_H
|
#include <signal.h>
|
||||||
# include <signal.h>
|
|
||||||
#endif
|
|
||||||
#ifdef HAVE_NLS
|
#ifdef HAVE_NLS
|
||||||
#ifdef HAVE_LOCALE_H
|
#ifdef HAVE_LOCALE_H
|
||||||
# include <locale.h>
|
# include <locale.h>
|
||||||
@ -70,7 +68,7 @@ extern char *version_string;
|
|||||||
|
|
||||||
extern struct cookie_jar *wget_cookie_jar;
|
extern struct cookie_jar *wget_cookie_jar;
|
||||||
|
|
||||||
static RETSIGTYPE redirect_output_signal (int);
|
static void redirect_output_signal (int);
|
||||||
|
|
||||||
const char *exec_name;
|
const char *exec_name;
|
||||||
|
|
||||||
@ -993,13 +991,9 @@ Can't timestamp and not clobber old files at the same time.\n"));
|
|||||||
#ifdef HAVE_SIGNAL
|
#ifdef HAVE_SIGNAL
|
||||||
/* Hangup signal handler. When wget receives SIGHUP or SIGUSR1, it
|
/* Hangup signal handler. When wget receives SIGHUP or SIGUSR1, it
|
||||||
will proceed operation as usual, trying to write into a log file.
|
will proceed operation as usual, trying to write into a log file.
|
||||||
If that is impossible, the output will be turned off.
|
If that is impossible, the output will be turned off. */
|
||||||
|
|
||||||
#### It is unsafe to do call libc functions from a signal handler.
|
static void
|
||||||
What we should do is, set a global variable, and have the code in
|
|
||||||
log.c pick it up. */
|
|
||||||
|
|
||||||
static RETSIGTYPE
|
|
||||||
redirect_output_signal (int sig)
|
redirect_output_signal (int sig)
|
||||||
{
|
{
|
||||||
const char *signal_name = (sig == SIGHUP ? "SIGHUP" :
|
const char *signal_name = (sig == SIGHUP ? "SIGHUP" :
|
||||||
|
@ -499,7 +499,7 @@ ws_changetitle (const char *url)
|
|||||||
{
|
{
|
||||||
xfree_null (title_buf);
|
xfree_null (title_buf);
|
||||||
xfree_null (curr_url);
|
xfree_null (curr_url);
|
||||||
title_buf = (char *)xmalloc (strlen (url) + 20);
|
title_buf = xmalloc (strlen (url) + 20);
|
||||||
curr_url = xstrdup (url);
|
curr_url = xstrdup (url);
|
||||||
old_percentage = -1;
|
old_percentage = -1;
|
||||||
sprintf (title_buf, "Wget %s", curr_url);
|
sprintf (title_buf, "Wget %s", curr_url);
|
||||||
|
@ -164,7 +164,7 @@ read_whole_line (FILE *fp)
|
|||||||
{
|
{
|
||||||
int length = 0;
|
int length = 0;
|
||||||
int bufsize = 81;
|
int bufsize = 81;
|
||||||
char *line = (char *)xmalloc (bufsize);
|
char *line = xmalloc (bufsize);
|
||||||
|
|
||||||
while (fgets (line + length, bufsize - length, fp))
|
while (fgets (line + length, bufsize - length, fp))
|
||||||
{
|
{
|
||||||
@ -220,7 +220,7 @@ maybe_add_to_list (acc_t **newentry, acc_t **list)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Allocate a new acc_t structure. */
|
/* Allocate a new acc_t structure. */
|
||||||
a = (acc_t *)xmalloc (sizeof (acc_t));
|
a = xmalloc (sizeof (acc_t));
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Zero the structure, so that it is ready to use. */
|
/* Zero the structure, so that it is ready to use. */
|
||||||
|
@ -36,9 +36,7 @@ so, delete this exception statement from your version. */
|
|||||||
#ifdef HAVE_UNISTD_H
|
#ifdef HAVE_UNISTD_H
|
||||||
# include <unistd.h>
|
# include <unistd.h>
|
||||||
#endif
|
#endif
|
||||||
#ifdef HAVE_SIGNAL_H
|
#include <signal.h>
|
||||||
# include <signal.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "wget.h"
|
#include "wget.h"
|
||||||
#include "progress.h"
|
#include "progress.h"
|
||||||
@ -956,7 +954,7 @@ bar_set_params (const char *params)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef SIGWINCH
|
#ifdef SIGWINCH
|
||||||
RETSIGTYPE
|
void
|
||||||
progress_handle_sigwinch (int sig)
|
progress_handle_sigwinch (int sig)
|
||||||
{
|
{
|
||||||
received_sigwinch = 1;
|
received_sigwinch = 1;
|
||||||
|
@ -39,6 +39,6 @@ int progress_interactive_p (void *);
|
|||||||
void progress_update (void *, wgint, double);
|
void progress_update (void *, wgint, double);
|
||||||
void progress_finish (void *, double);
|
void progress_finish (void *, double);
|
||||||
|
|
||||||
RETSIGTYPE progress_handle_sigwinch (int);
|
void progress_handle_sigwinch (int);
|
||||||
|
|
||||||
#endif /* PROGRESS_H */
|
#endif /* PROGRESS_H */
|
||||||
|
10
src/url.c
10
src/url.c
@ -205,7 +205,7 @@ url_escape_1 (const char *s, unsigned char mask, int allow_passthrough)
|
|||||||
return allow_passthrough ? (char *)s : xstrdup (s);
|
return allow_passthrough ? (char *)s : xstrdup (s);
|
||||||
|
|
||||||
newlen = (p1 - s) + addition;
|
newlen = (p1 - s) + addition;
|
||||||
newstr = (char *)xmalloc (newlen + 1);
|
newstr = xmalloc (newlen + 1);
|
||||||
|
|
||||||
p1 = s;
|
p1 = s;
|
||||||
p2 = newstr;
|
p2 = newstr;
|
||||||
@ -984,7 +984,7 @@ char *
|
|||||||
url_full_path (const struct url *url)
|
url_full_path (const struct url *url)
|
||||||
{
|
{
|
||||||
int length = full_path_length (url);
|
int length = full_path_length (url);
|
||||||
char *full_path = (char *) xmalloc (length + 1);
|
char *full_path = xmalloc (length + 1);
|
||||||
|
|
||||||
full_path_write (url, full_path);
|
full_path_write (url, full_path);
|
||||||
full_path[length] = '\0';
|
full_path[length] = '\0';
|
||||||
@ -1692,7 +1692,7 @@ uri_merge (const char *base, const char *link)
|
|||||||
start_insert = base;
|
start_insert = base;
|
||||||
|
|
||||||
span = start_insert - base;
|
span = start_insert - base;
|
||||||
merge = (char *)xmalloc (span + linklength + 1);
|
merge = xmalloc (span + linklength + 1);
|
||||||
if (span)
|
if (span)
|
||||||
memcpy (merge, base, span);
|
memcpy (merge, base, span);
|
||||||
memcpy (merge + span, link, linklength);
|
memcpy (merge + span, link, linklength);
|
||||||
@ -1747,7 +1747,7 @@ uri_merge (const char *base, const char *link)
|
|||||||
start_insert = slash;
|
start_insert = slash;
|
||||||
|
|
||||||
span = start_insert - base;
|
span = start_insert - base;
|
||||||
merge = (char *)xmalloc (span + linklength + 1);
|
merge = xmalloc (span + linklength + 1);
|
||||||
if (span)
|
if (span)
|
||||||
memcpy (merge, base, span);
|
memcpy (merge, base, span);
|
||||||
memcpy (merge + span, link, linklength);
|
memcpy (merge + span, link, linklength);
|
||||||
@ -1785,7 +1785,7 @@ uri_merge (const char *base, const char *link)
|
|||||||
}
|
}
|
||||||
|
|
||||||
span = start_insert - base;
|
span = start_insert - base;
|
||||||
merge = (char *)xmalloc (span + linklength + 1);
|
merge = xmalloc (span + linklength + 1);
|
||||||
if (span)
|
if (span)
|
||||||
memcpy (merge, base, span);
|
memcpy (merge, base, span);
|
||||||
if (need_explicit_slash)
|
if (need_explicit_slash)
|
||||||
|
30
src/utils.c
30
src/utils.c
@ -45,9 +45,6 @@ so, delete this exception statement from your version. */
|
|||||||
#ifdef HAVE_PWD_H
|
#ifdef HAVE_PWD_H
|
||||||
# include <pwd.h>
|
# include <pwd.h>
|
||||||
#endif
|
#endif
|
||||||
#ifdef HAVE_LIMITS_H
|
|
||||||
# include <limits.h>
|
|
||||||
#endif
|
|
||||||
#ifdef HAVE_UTIME_H
|
#ifdef HAVE_UTIME_H
|
||||||
# include <utime.h>
|
# include <utime.h>
|
||||||
#endif
|
#endif
|
||||||
@ -71,10 +68,7 @@ so, delete this exception statement from your version. */
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Needed for run_with_timeout. */
|
/* Needed for run_with_timeout. */
|
||||||
#undef USE_SIGNAL_TIMEOUT
|
#include <signal.h>
|
||||||
#ifdef HAVE_SIGNAL_H
|
|
||||||
# include <signal.h>
|
|
||||||
#endif
|
|
||||||
#ifdef HAVE_SETJMP_H
|
#ifdef HAVE_SETJMP_H
|
||||||
# include <setjmp.h>
|
# include <setjmp.h>
|
||||||
#endif
|
#endif
|
||||||
@ -86,11 +80,9 @@ so, delete this exception statement from your version. */
|
|||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#undef USE_SIGNAL_TIMEOUT
|
||||||
#ifdef HAVE_SIGNAL
|
#ifdef HAVE_SIGNAL
|
||||||
# ifdef HAVE_SIGSETJMP
|
# if defined(HAVE_SIGSETJMP) || defined(HAVE_SIGBLOCK)
|
||||||
# define USE_SIGNAL_TIMEOUT
|
|
||||||
# endif
|
|
||||||
# ifdef HAVE_SIGBLOCK
|
|
||||||
# define USE_SIGNAL_TIMEOUT
|
# define USE_SIGNAL_TIMEOUT
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
@ -117,7 +109,7 @@ xstrdup_lower (const char *s)
|
|||||||
char *
|
char *
|
||||||
strdupdelim (const char *beg, const char *end)
|
strdupdelim (const char *beg, const char *end)
|
||||||
{
|
{
|
||||||
char *res = (char *)xmalloc (end - beg + 1);
|
char *res = xmalloc (end - beg + 1);
|
||||||
memcpy (res, beg, end - beg);
|
memcpy (res, beg, end - beg);
|
||||||
res[end - beg] = '\0';
|
res[end - beg] = '\0';
|
||||||
return res;
|
return res;
|
||||||
@ -141,7 +133,7 @@ sepstring (const char *s)
|
|||||||
{
|
{
|
||||||
if (*s == ',')
|
if (*s == ',')
|
||||||
{
|
{
|
||||||
res = (char **)xrealloc (res, (i + 2) * sizeof (char *));
|
res = xrealloc (res, (i + 2) * sizeof (char *));
|
||||||
res[i] = strdupdelim (p, s);
|
res[i] = strdupdelim (p, s);
|
||||||
res[++i] = NULL;
|
res[++i] = NULL;
|
||||||
++s;
|
++s;
|
||||||
@ -153,7 +145,7 @@ sepstring (const char *s)
|
|||||||
else
|
else
|
||||||
++s;
|
++s;
|
||||||
}
|
}
|
||||||
res = (char **)xrealloc (res, (i + 2) * sizeof (char *));
|
res = xrealloc (res, (i + 2) * sizeof (char *));
|
||||||
res[i] = strdupdelim (p, s);
|
res[i] = strdupdelim (p, s);
|
||||||
res[i + 1] = NULL;
|
res[i + 1] = NULL;
|
||||||
return res;
|
return res;
|
||||||
@ -616,7 +608,7 @@ file_merge (const char *base, const char *file)
|
|||||||
if (!cut)
|
if (!cut)
|
||||||
return xstrdup (file);
|
return xstrdup (file);
|
||||||
|
|
||||||
result = (char *)xmalloc (cut - base + 1 + strlen (file) + 1);
|
result = xmalloc (cut - base + 1 + strlen (file) + 1);
|
||||||
memcpy (result, base, cut - base);
|
memcpy (result, base, cut - base);
|
||||||
result[cut - base] = '/';
|
result[cut - base] = '/';
|
||||||
strcpy (result + (cut - base) + 1, file);
|
strcpy (result + (cut - base) + 1, file);
|
||||||
@ -853,7 +845,7 @@ read_whole_line (FILE *fp)
|
|||||||
{
|
{
|
||||||
int length = 0;
|
int length = 0;
|
||||||
int bufsize = 82;
|
int bufsize = 82;
|
||||||
char *line = (char *)xmalloc (bufsize);
|
char *line = xmalloc (bufsize);
|
||||||
|
|
||||||
while (fgets (line + length, bufsize - length, fp))
|
while (fgets (line + length, bufsize - length, fp))
|
||||||
{
|
{
|
||||||
@ -1065,7 +1057,7 @@ merge_vecs (char **v1, char **v2)
|
|||||||
/* Count v2. */
|
/* Count v2. */
|
||||||
for (j = 0; v2[j]; j++);
|
for (j = 0; v2[j]; j++);
|
||||||
/* Reallocate v1. */
|
/* Reallocate v1. */
|
||||||
v1 = (char **)xrealloc (v1, (i + j + 1) * sizeof (char **));
|
v1 = xrealloc (v1, (i + j + 1) * sizeof (char **));
|
||||||
memcpy (v1 + i, v2, (j + 1) * sizeof (char *));
|
memcpy (v1 + i, v2, (j + 1) * sizeof (char *));
|
||||||
xfree (v2);
|
xfree (v2);
|
||||||
return v1;
|
return v1;
|
||||||
@ -1633,7 +1625,7 @@ random_float (void)
|
|||||||
|
|
||||||
static sigjmp_buf run_with_timeout_env;
|
static sigjmp_buf run_with_timeout_env;
|
||||||
|
|
||||||
static RETSIGTYPE
|
static void
|
||||||
abort_run_with_timeout (int sig)
|
abort_run_with_timeout (int sig)
|
||||||
{
|
{
|
||||||
assert (sig == SIGALRM);
|
assert (sig == SIGALRM);
|
||||||
@ -1644,7 +1636,7 @@ abort_run_with_timeout (int sig)
|
|||||||
|
|
||||||
static jmp_buf run_with_timeout_env;
|
static jmp_buf run_with_timeout_env;
|
||||||
|
|
||||||
static RETSIGTYPE
|
static void
|
||||||
abort_run_with_timeout (int sig)
|
abort_run_with_timeout (int sig)
|
||||||
{
|
{
|
||||||
assert (sig == SIGALRM);
|
assert (sig == SIGALRM);
|
||||||
|
@ -213,7 +213,7 @@ typedef off_t wgint;
|
|||||||
(sizevar) = DR_newsize; \
|
(sizevar) = DR_newsize; \
|
||||||
} \
|
} \
|
||||||
if (DR_newsize) \
|
if (DR_newsize) \
|
||||||
basevar = (type *)xrealloc (basevar, DR_newsize * sizeof (type)); \
|
basevar = xrealloc (basevar, DR_newsize * sizeof (type)); \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
/* Used to print pointers (usually for debugging). Print pointers
|
/* Used to print pointers (usually for debugging). Print pointers
|
||||||
|
@ -83,10 +83,10 @@ void debugging_free (void *, const char *, int);
|
|||||||
necessary in standard C, but Wget performs them anyway for the sake
|
necessary in standard C, but Wget performs them anyway for the sake
|
||||||
of pre-standard environments and possibly C++. */
|
of pre-standard environments and possibly C++. */
|
||||||
|
|
||||||
#define xnew(type) ((type *) xmalloc (sizeof (type)))
|
#define xnew(type) (xmalloc (sizeof (type)))
|
||||||
#define xnew0(type) ((type *) xmalloc0 (sizeof (type)))
|
#define xnew0(type) (xmalloc0 (sizeof (type)))
|
||||||
#define xnew_array(type, len) ((type *) xmalloc ((len) * sizeof (type)))
|
#define xnew_array(type, len) (xmalloc ((len) * sizeof (type)))
|
||||||
#define xnew0_array(type, len) ((type *) xmalloc0 ((len) * sizeof (type)))
|
#define xnew0_array(type, len) (xmalloc0 ((len) * sizeof (type)))
|
||||||
|
|
||||||
#define alloca_array(type, size) ((type *) alloca ((size) * sizeof (type)))
|
#define alloca_array(type, size) ((type *) alloca ((size) * sizeof (type)))
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user