diff options
-rwxr-xr-x | android/camera/camera-capture-windows.c | 1 | ||||
-rw-r--r-- | android/hw-events.h | 11 | ||||
-rw-r--r-- | android/main-common.c | 2 | ||||
-rw-r--r-- | osdep.c | 8 | ||||
-rw-r--r-- | sockets.c | 55 | ||||
-rw-r--r-- | tap-win32.c | 8 |
6 files changed, 46 insertions, 39 deletions
diff --git a/android/camera/camera-capture-windows.c b/android/camera/camera-capture-windows.c index e1c5538..7f9df39 100755 --- a/android/camera/camera-capture-windows.c +++ b/android/camera/camera-capture-windows.c @@ -19,6 +19,7 @@ * This code uses capXxx API, available via capCreateCaptureWindow. */ +#include <windows.h> #include <vfw.h> #include "android/camera/camera-capture.h" #include "android/camera/camera-format-converters.h" diff --git a/android/hw-events.h b/android/hw-events.h index 488c299..b8340bd 100644 --- a/android/hw-events.h +++ b/android/hw-events.h @@ -41,6 +41,17 @@ typedef enum { /* BEWARE: The following codes are defined by the Linux kernel headers. * The Android "Menu" key is KEY_SOFT1, *not* KEY_MENU */ +/* NOTE: mingw's winnt.h define DELETE to constant + i586-mingw32msvc: #define DELETE 0x00010000L + x86_64-w64-mingw32-gcc: #define DELETE (0x00010000L) + + KEY_CODE belows glues "KEY_" and "DELETE". + While KEY_0x00010000L may not mean anything, + KEY_(0x00010000L) is absolutely harmful to compiler. + Undefine DELETE below + */ +#undef DELETE + #define EVENT_KEY_LIST \ KEY_CODE(ESC ,1) \ KEY_CODE(1 ,2) \ diff --git a/android/main-common.c b/android/main-common.c index 04d200a..2d535c7 100644 --- a/android/main-common.c +++ b/android/main-common.c @@ -232,7 +232,7 @@ sdl_set_window_icon( void ) SDL_GetWMInfo(&wminfo); - SetClassLong( wminfo.window, GCL_HICON, (LONG)icon ); + SetClassLongPtr( wminfo.window, GCLP_HICON, (LONG)icon ); #else /* !_WIN32 */ unsigned icon_w, icon_h; size_t icon_bytes; @@ -186,10 +186,10 @@ int qemu_accept(int s, struct sockaddr *addr, socklen_t *addrlen) } #ifdef WIN32 -int asprintf( char **, char *, ... ); -int vasprintf( char **, char *, va_list ); +int asprintf( char **, const char *, ... ); +int vasprintf( char **, const char *, va_list ); -int vasprintf( char **sptr, char *fmt, va_list argv ) +int vasprintf( char **sptr, const char *fmt, va_list argv ) { int wanted = vsnprintf( *sptr = NULL, 0, fmt, argv ); if( (wanted > 0) && ((*sptr = malloc( 1 + wanted )) != NULL) ) @@ -198,7 +198,7 @@ int vasprintf( char **sptr, char *fmt, va_list argv ) return wanted; } -int asprintf( char **sptr, char *fmt, ... ) +int asprintf( char **sptr, const char *fmt, ... ) { int retval; va_list argv; @@ -125,7 +125,7 @@ static const WinsockError _winsock_errors[] = { * errno. */ static int -_fix_errno( void ) +fix_errno( void ) { const WinsockError* werr = _winsock_errors; int unix = EINVAL; /* generic error code */ @@ -143,7 +143,7 @@ _fix_errno( void ) } static int -_set_errno( int code ) +set_errno( int code ) { winsock_error = -1; errno = code; @@ -173,13 +173,13 @@ _errno_str(void) } #else static int -_fix_errno( void ) +fix_errno( void ) { return -1; } static int -_set_errno( int code ) +set_errno( int code ) { errno = code; return -1; @@ -560,7 +560,7 @@ sock_address_to_bsd( const SockAddress* a, sockaddr_storage* paddress, socklen #endif /* HAVE_UNIX_SOCKETS */ default: - return _set_errno(EINVAL); + return set_errno(EINVAL); } return 0; @@ -575,7 +575,7 @@ sock_address_from_bsd( SockAddress* a, const void* from, size_t fromlen ) const struct sockaddr_in* src = from; if (fromlen < sizeof(*src)) - return _set_errno(EINVAL); + return set_errno(EINVAL); a->family = SOCKET_INET; a->u.inet.port = ntohs(src->sin_port); @@ -589,7 +589,7 @@ sock_address_from_bsd( SockAddress* a, const void* from, size_t fromlen ) const struct sockaddr_in6* src = from; if (fromlen < sizeof(*src)) - return _set_errno(EINVAL); + return set_errno(EINVAL); a->family = SOCKET_IN6; a->u.in6.port = ntohs(src->sin6_port); @@ -605,12 +605,12 @@ sock_address_from_bsd( SockAddress* a, const void* from, size_t fromlen ) char* end; if (fromlen < sizeof(*src)) - return _set_errno(EINVAL); + return set_errno(EINVAL); /* check that the path is zero-terminated */ end = memchr(src->sun_path, 0, UNIX_PATH_MAX); if (end == NULL) - return _set_errno(EINVAL); + return set_errno(EINVAL); a->family = SOCKET_UNIX; a->u._unix.owner = 1; @@ -620,7 +620,7 @@ sock_address_from_bsd( SockAddress* a, const void* from, size_t fromlen ) #endif default: - return _set_errno(EINVAL); + return set_errno(EINVAL); } return 0; } @@ -646,7 +646,8 @@ sock_address_init_resolve( SockAddress* a, const char* hostname, uint16_t por err = EHOSTDOWN; break; -#ifdef EAI_NODATA +/* NOTE that in x86_64-w64-mingw32 both EAI_NODATA and EAI_NONAME are the same */ +#if defined(EAI_NODATA) && (EAI_NODATA != EAI_NONAME) case EAI_NODATA: #endif case EAI_NONAME: @@ -660,7 +661,7 @@ sock_address_init_resolve( SockAddress* a, const char* hostname, uint16_t por default: err = EINVAL; } - return _set_errno(err); + return set_errno(err); } /* Parse the returned list of addresses. */ @@ -699,7 +700,7 @@ sock_address_init_resolve( SockAddress* a, const char* hostname, uint16_t por } if (r == NULL) { - ret = _set_errno(ENOENT); + ret = set_errno(ENOENT); goto Exit; } @@ -765,13 +766,13 @@ sock_address_list_create( const char* hostname, case EAI_ADDRFAMILY: #endif case EAI_NODATA: - _set_errno(ENOENT); + set_errno(ENOENT); break; case EAI_FAMILY: - _set_errno(EAFNOSUPPORT); + set_errno(EAFNOSUPPORT); break; case EAI_AGAIN: - _set_errno(EAGAIN); + set_errno(EAGAIN); break; #ifdef EAI_SYSTEM case EAI_SYSTEM: @@ -780,7 +781,7 @@ sock_address_list_create( const char* hostname, break; #endif default: - _set_errno(EINVAL); + set_errno(EINVAL); } return NULL; } @@ -874,7 +875,7 @@ sock_address_get_numeric_info( SockAddress* a, break; #endif default: - return _set_errno(EINVAL); + return set_errno(EINVAL); } ret = getnameinfo( saddr, slen, host, hostlen, serv, servlen, @@ -900,12 +901,12 @@ socket_create( SocketFamily family, SocketType type ) int stype = socket_type_to_bsd(type); if (sfamily < 0 || stype < 0) { - return _set_errno(EINVAL); + return set_errno(EINVAL); } QSOCKET_CALL(ret, socket(sfamily, stype, 0)); if (ret < 0) - return _fix_errno(); + return fix_errno(); return ret; } @@ -956,7 +957,7 @@ int socket_can_read(int fd) int ret; \ QSOCKET_CALL(ret, (cmd)); \ if (ret < 0) \ - return _fix_errno(); \ + return fix_errno(); \ return ret; \ int @@ -998,7 +999,7 @@ socket_recvfrom(int fd, void* buf, int len, SockAddress* from) QSOCKET_CALL(ret,recvfrom(fd,buf,len,0,sa.sa,&salen)); if (ret < 0) - return _fix_errno(); + return fix_errno(); if (sock_address_from_bsd(from, &sa, salen) < 0) return -1; @@ -1039,7 +1040,7 @@ socket_get_address( int fd, SockAddress* address ) QSOCKET_CALL(ret, getsockname(fd, addr.sa, &addrlen)); if (ret < 0) - return _fix_errno(); + return fix_errno(); return sock_address_from_bsd(address, &addr, addrlen); } @@ -1053,7 +1054,7 @@ socket_get_peer_address( int fd, SockAddress* address ) QSOCKET_CALL(ret, getpeername(fd, addr.sa, &addrlen)); if (ret < 0) - return _fix_errno(); + return fix_errno(); return sock_address_from_bsd(address, &addr, addrlen); } @@ -1073,7 +1074,7 @@ socket_accept( int fd, SockAddress* address ) QSOCKET_CALL(ret, accept(fd, addr.sa, &addrlen)); if (ret < 0) - return _fix_errno(); + return fix_errno(); if (address) { if (sock_address_from_bsd(address, &addr, addrlen) < 0) { @@ -1517,7 +1518,7 @@ socket_mcast_inet_add_membership( int s, uint32_t ip ) (const char *)&imr, sizeof(struct ip_mreq)) < 0 ) { - return _fix_errno(); + return fix_errno(); } return 0; } @@ -1534,7 +1535,7 @@ socket_mcast_inet_drop_membership( int s, uint32_t ip ) (const char *)&imr, sizeof(struct ip_mreq)) < 0 ) { - return _fix_errno(); + return fix_errno(); } return 0; } diff --git a/tap-win32.c b/tap-win32.c index ba93355..ce30a50 100644 --- a/tap-win32.c +++ b/tap-win32.c @@ -31,13 +31,7 @@ #include "sysemu.h" #include <stdio.h> #include <windows.h> - -/* NOTE: PCIBus is redefined in winddk.h */ -#define PCIBus _PCIBus -#include <ddk/ntapi.h> -#include <ddk/winddk.h> -#include <ddk/ntddk.h> -#undef PCIBus +#include <winioctl.h> //============= // TAP IOCTLs |