aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xandroid/camera/camera-capture-windows.c1
-rw-r--r--android/hw-events.h11
-rw-r--r--android/main-common.c2
-rw-r--r--osdep.c8
-rw-r--r--sockets.c55
-rw-r--r--tap-win32.c8
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;
diff --git a/osdep.c b/osdep.c
index 6c402d9..a5efe92 100644
--- a/osdep.c
+++ b/osdep.c
@@ -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;
diff --git a/sockets.c b/sockets.c
index 1063339..0879c06 100644
--- a/sockets.c
+++ b/sockets.c
@@ -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