mirror of
https://github.com/moparisthebest/wget
synced 2024-07-03 16:38:41 -04:00
[svn] Formatting tweaks by David Fritz.
This commit is contained in:
parent
b4e408b3a6
commit
6b955d9fe7
@ -1,3 +1,9 @@
|
|||||||
|
2004-02-23 David Fritz <zeroxdf@att.net>
|
||||||
|
|
||||||
|
* mswindows.h: Ditto.
|
||||||
|
|
||||||
|
* mswindows.c: Misc. formatting/comment tweaks throughout.
|
||||||
|
|
||||||
2004-02-20 David Fritz <zeroxdf@att.net>
|
2004-02-20 David Fritz <zeroxdf@att.net>
|
||||||
|
|
||||||
* main.c (print_help): Remove call to ws_help().
|
* main.c (print_help): Remove call to ws_help().
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
/* mswindows.c -- Windows-specific support
|
/* mswindows.c -- Windows-specific support
|
||||||
Copyright (C) 1995, 1996, 1997, 1998, 2004 Free Software Foundation, Inc.
|
Copyright (C) 1995, 1996, 1997, 1998, 2004
|
||||||
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GNU Wget.
|
This file is part of GNU Wget.
|
||||||
|
|
||||||
@ -104,8 +105,6 @@ windows_main_junk (int *argc, char **argv, char **exec_name)
|
|||||||
*p = '\0';
|
*p = '\0';
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Winsock stuff. */
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
ws_cleanup (void)
|
ws_cleanup (void)
|
||||||
{
|
{
|
||||||
@ -195,6 +194,9 @@ ws_percenttitle (double percent)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Returns a pointer to the fully qualified name of the directory that
|
||||||
|
contains the Wget binary (wget.exe). The returned path does not have a
|
||||||
|
trailing path separator. Returns NULL on failure. */
|
||||||
char *
|
char *
|
||||||
ws_mypath (void)
|
ws_mypath (void)
|
||||||
{
|
{
|
||||||
@ -221,6 +223,7 @@ ws_mypath (void)
|
|||||||
return wspathsave;
|
return wspathsave;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Perform Windows specific initialization. */
|
||||||
void
|
void
|
||||||
ws_startup (void)
|
ws_startup (void)
|
||||||
{
|
{
|
||||||
@ -235,7 +238,6 @@ ws_startup (void)
|
|||||||
|
|
||||||
requested = MAKEWORD (1, 1);
|
requested = MAKEWORD (1, 1);
|
||||||
err = WSAStartup (requested, &data);
|
err = WSAStartup (requested, &data);
|
||||||
|
|
||||||
if (err != 0)
|
if (err != 0)
|
||||||
{
|
{
|
||||||
fprintf (stderr, _("%s: Couldn't find usable socket driver.\n"),
|
fprintf (stderr, _("%s: Couldn't find usable socket driver.\n"),
|
||||||
@ -250,6 +252,7 @@ ws_startup (void)
|
|||||||
WSACleanup ();
|
WSACleanup ();
|
||||||
exit (1);
|
exit (1);
|
||||||
}
|
}
|
||||||
|
|
||||||
atexit (ws_cleanup);
|
atexit (ws_cleanup);
|
||||||
pwr_mode = set_sleep_mode (0);
|
pwr_mode = set_sleep_mode (0);
|
||||||
SetConsoleCtrlHandler (ws_handler, TRUE);
|
SetConsoleCtrlHandler (ws_handler, TRUE);
|
||||||
@ -283,12 +286,10 @@ borland_utime (const char *path, const struct utimbuf *times)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/* Prevent Windows entering sleep/hibernation-mode while Wget is doing
|
||||||
* Prevent Windows entering sleep/hibernation-mode while wget is doing
|
a lengthy transfer. Windows does not, by default, consider network
|
||||||
* a lengthy transfer. Windows does by default not consider network
|
activity in console-programs as activity! Works on Win-98/ME/2K
|
||||||
* activity in console-programs as activity ! Works on Win-98/ME/2K
|
and up. */
|
||||||
* and up.
|
|
||||||
*/
|
|
||||||
static DWORD
|
static DWORD
|
||||||
set_sleep_mode (DWORD mode)
|
set_sleep_mode (DWORD mode)
|
||||||
{
|
{
|
||||||
@ -312,17 +313,17 @@ set_sleep_mode (DWORD mode)
|
|||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* run_with_timeout Windows implementation. */
|
/* run_with_timeout Windows implementation. */
|
||||||
|
|
||||||
/* Stack size 0 uses default thread stack-size (reserve+commit).
|
/* Stack size 0 uses default thread stack-size (reserve+commit).
|
||||||
* Determined by what's in the PE header.
|
Determined by what's in the PE header. */
|
||||||
*/
|
|
||||||
#define THREAD_STACK_SIZE 0
|
#define THREAD_STACK_SIZE 0
|
||||||
|
|
||||||
struct thread_data {
|
struct thread_data
|
||||||
void (*fun) (void *);
|
{
|
||||||
void *arg;
|
void (*fun) (void *);
|
||||||
DWORD ws_error;
|
void *arg;
|
||||||
|
DWORD ws_error;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* The callback that runs FUN(ARG) in a separate thread. This
|
/* The callback that runs FUN(ARG) in a separate thread. This
|
||||||
@ -334,7 +335,7 @@ struct thread_data {
|
|||||||
[1] MSVC can use __fastcall globally (cl /Gr) and on Watcom this is
|
[1] MSVC can use __fastcall globally (cl /Gr) and on Watcom this is
|
||||||
the default (wcc386 -3r). */
|
the default (wcc386 -3r). */
|
||||||
|
|
||||||
static DWORD WINAPI
|
static DWORD WINAPI
|
||||||
thread_helper (void *arg)
|
thread_helper (void *arg)
|
||||||
{
|
{
|
||||||
struct thread_data *td = (struct thread_data *) arg;
|
struct thread_data *td = (struct thread_data *) arg;
|
||||||
@ -349,7 +350,7 @@ thread_helper (void *arg)
|
|||||||
/* Return Winsock error to the caller, in case FUN ran Winsock
|
/* Return Winsock error to the caller, in case FUN ran Winsock
|
||||||
code. */
|
code. */
|
||||||
td->ws_error = WSAGetLastError ();
|
td->ws_error = WSAGetLastError ();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Call FUN(ARG), but don't allow it to run for more than TIMEOUT
|
/* Call FUN(ARG), but don't allow it to run for more than TIMEOUT
|
||||||
@ -364,11 +365,11 @@ run_with_timeout (double seconds, void (*fun) (void *), void *arg)
|
|||||||
{
|
{
|
||||||
static HANDLE thread_hnd = NULL;
|
static HANDLE thread_hnd = NULL;
|
||||||
struct thread_data thread_arg;
|
struct thread_data thread_arg;
|
||||||
DWORD thread_id;
|
DWORD thread_id;
|
||||||
int rc = 0;
|
int rc = 0;
|
||||||
|
|
||||||
DEBUGP (("seconds %.2f, ", seconds));
|
DEBUGP (("seconds %.2f, ", seconds));
|
||||||
|
|
||||||
if (seconds == 0)
|
if (seconds == 0)
|
||||||
{
|
{
|
||||||
blocking_fallback:
|
blocking_fallback:
|
||||||
@ -376,14 +377,14 @@ run_with_timeout (double seconds, void (*fun) (void *), void *arg)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Should never happen, but test for recursivety anyway */
|
/* Should never happen, but test for recursivety anyway. */
|
||||||
assert (thread_hnd == NULL);
|
assert (thread_hnd == NULL);
|
||||||
|
|
||||||
thread_arg.fun = fun;
|
thread_arg.fun = fun;
|
||||||
thread_arg.arg = arg;
|
thread_arg.arg = arg;
|
||||||
thread_arg.ws_error = WSAGetLastError ();
|
thread_arg.ws_error = WSAGetLastError ();
|
||||||
thread_hnd = CreateThread (NULL, THREAD_STACK_SIZE, thread_helper,
|
thread_hnd = CreateThread (NULL, THREAD_STACK_SIZE, thread_helper,
|
||||||
&thread_arg, 0, &thread_id);
|
&thread_arg, 0, &thread_id);
|
||||||
if (!thread_hnd)
|
if (!thread_hnd)
|
||||||
{
|
{
|
||||||
DEBUGP (("CreateThread() failed; %s\n", strerror (GetLastError ())));
|
DEBUGP (("CreateThread() failed; %s\n", strerror (GetLastError ())));
|
||||||
@ -405,7 +406,7 @@ run_with_timeout (double seconds, void (*fun) (void *), void *arg)
|
|||||||
rc = 1;
|
rc = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
CloseHandle (thread_hnd); /* clear-up after TerminateThread() */
|
CloseHandle (thread_hnd); /* Clear-up after TerminateThread(). */
|
||||||
thread_hnd = NULL;
|
thread_hnd = NULL;
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
/* Declarations for windows
|
/* Declarations for windows
|
||||||
Copyright (C) 1995, 1997, 1997, 1998 Free Software Foundation, Inc.
|
Copyright (C) 1995, 1997, 1997, 1998, 2004
|
||||||
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GNU Wget.
|
This file is part of GNU Wget.
|
||||||
|
|
||||||
@ -34,16 +35,16 @@ so, delete this exception statement from your version. */
|
|||||||
#error Include mswindows.h inside or after "wget.h"
|
#error Include mswindows.h inside or after "wget.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Prevent inclusion of <winsock*.h> in <windows.h>. */
|
||||||
#ifndef WIN32_LEAN_AND_MEAN
|
#ifndef WIN32_LEAN_AND_MEAN
|
||||||
#define WIN32_LEAN_AND_MEAN /* Prevent inclusion of <winsock*.h> in <windows.h> */
|
#define WIN32_LEAN_AND_MEAN
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
|
||||||
/* Use the correct winsock header; <ws2tcpip.h> includes <winsock2.h> only on
|
/* Use the correct winsock header; <ws2tcpip.h> includes <winsock2.h> only
|
||||||
* Watcom/MingW. We cannot use <winsock.h> for IPv6. Using getaddrinfo() requires
|
on Watcom/MingW. We cannot use <winsock.h> for IPv6. Using
|
||||||
* <ws2tcpip.h>
|
getaddrinfo() requires <ws2tcpip.h>. */
|
||||||
*/
|
|
||||||
#if defined(ENABLE_IPV6) || defined(HAVE_GETADDRINFO)
|
#if defined(ENABLE_IPV6) || defined(HAVE_GETADDRINFO)
|
||||||
# include <winsock2.h>
|
# include <winsock2.h>
|
||||||
# include <ws2tcpip.h>
|
# include <ws2tcpip.h>
|
||||||
@ -55,13 +56,13 @@ so, delete this exception statement from your version. */
|
|||||||
# define EAI_SYSTEM -1 /* value doesn't matter */
|
# define EAI_SYSTEM -1 /* value doesn't matter */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Must include <sys/stat.h> because of 'stat' define below. */
|
/* Must include <sys/stat.h> because of 'stat' define below. */
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
|
|
||||||
/* Missing in several .c files. Include here. */
|
/* Missing in several .c files. Include here. */
|
||||||
#include <io.h>
|
#include <io.h>
|
||||||
|
|
||||||
/* Apparently needed for alloca(). */
|
/* Apparently needed for alloca(). */
|
||||||
#include <malloc.h>
|
#include <malloc.h>
|
||||||
|
|
||||||
#ifndef S_ISDIR
|
#ifndef S_ISDIR
|
||||||
@ -71,7 +72,7 @@ so, delete this exception statement from your version. */
|
|||||||
# define S_ISLNK(a) 0
|
# define S_ISLNK(a) 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* We have strcasecmp and strncasecmp, just under a different name. */
|
/* We have strcasecmp and strncasecmp, just under a different name. */
|
||||||
#define strcasecmp stricmp
|
#define strcasecmp stricmp
|
||||||
#define strncasecmp strnicmp
|
#define strncasecmp strnicmp
|
||||||
|
|
||||||
@ -84,13 +85,13 @@ so, delete this exception statement from your version. */
|
|||||||
|
|
||||||
#define PATH_SEPARATOR '\\'
|
#define PATH_SEPARATOR '\\'
|
||||||
|
|
||||||
/* Microsoft says stat is _stat, Borland doesn't */
|
/* Microsoft says stat is _stat, Borland doesn't. */
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
# define stat _stat
|
# define stat _stat
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_ISATTY
|
#ifdef HAVE_ISATTY
|
||||||
/* Microsoft VC supports _isatty; Borland ? */
|
/* Microsoft VC supports _isatty; Borland? */
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
# define isatty _isatty
|
# define isatty _isatty
|
||||||
#endif
|
#endif
|
||||||
@ -101,14 +102,14 @@ so, delete this exception statement from your version. */
|
|||||||
/* #### Do we need this? */
|
/* #### Do we need this? */
|
||||||
#include <direct.h>
|
#include <direct.h>
|
||||||
|
|
||||||
/* Windows compilers accept only one arg to mkdir. */
|
/* Windows compilers accept only one arg to mkdir. */
|
||||||
#ifndef __BORLANDC__
|
#ifndef __BORLANDC__
|
||||||
# define mkdir(a, b) _mkdir(a)
|
# define mkdir(a, b) _mkdir(a)
|
||||||
#else /* __BORLANDC__ */
|
#else /* __BORLANDC__ */
|
||||||
# define mkdir(a, b) mkdir(a)
|
# define mkdir(a, b) mkdir(a)
|
||||||
#endif /* __BORLANDC__ */
|
#endif /* __BORLANDC__ */
|
||||||
|
|
||||||
/* Declarations of various socket errors: */
|
/* Declarations of various socket errors: */
|
||||||
|
|
||||||
#define EWOULDBLOCK WSAEWOULDBLOCK
|
#define EWOULDBLOCK WSAEWOULDBLOCK
|
||||||
#define EINPROGRESS WSAEINPROGRESS
|
#define EINPROGRESS WSAEINPROGRESS
|
||||||
@ -161,7 +162,7 @@ void ws_percenttitle (double);
|
|||||||
char *ws_mypath (void);
|
char *ws_mypath (void);
|
||||||
void windows_main_junk (int *, char **, char **);
|
void windows_main_junk (int *, char **, char **);
|
||||||
|
|
||||||
/* Things needed for IPv6; missing in <ws2tcpip.h>. */
|
/* Things needed for IPv6; missing in <ws2tcpip.h>. */
|
||||||
#ifdef ENABLE_IPV6
|
#ifdef ENABLE_IPV6
|
||||||
# ifndef HAVE_NTOP
|
# ifndef HAVE_NTOP
|
||||||
extern const char *inet_ntop (int af, const void *src, char *dst, size_t size);
|
extern const char *inet_ntop (int af, const void *src, char *dst, size_t size);
|
||||||
|
Loading…
Reference in New Issue
Block a user