diff --git a/ChangeLog b/ChangeLog
index 645dff2..2a94081 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2009-01-10  Linus Walleij <triad@df.lth.se>
+
+	* src/libmtp.h.in: mingw32 fixes from James Ravenscroft.
+	* src/libmtp.c: dito.
+	* src/Makefile.am: dito.
+	* examples/albumart.c: dito.
+
 2009-01-06  Linus Walleij <triad@df.lth.se>
 
 	* src/Makefile.am: patch from Rafael Laboissiere removing a
diff --git a/examples/albumart.c b/examples/albumart.c
index 0b36919..c1fc7ad 100644
--- a/examples/albumart.c
+++ b/examples/albumart.c
@@ -97,7 +97,7 @@
   imagedata = malloc(filesize * sizeof(uint8_t));
 
 #ifdef __WIN32__
-  if ( (fd = open(path, O_RDONLY|O_BINARY) == -1 ) {
+  if ( (fd = open(path, O_RDONLY|O_BINARY) == -1) ) {
 #else
   if ( (fd = open(path, O_RDONLY)) == -1) {
 #endif
diff --git a/examples/thumb.c b/examples/thumb.c
index 59401d3..ddb5549 100644
--- a/examples/thumb.c
+++ b/examples/thumb.c
@@ -77,7 +77,7 @@
   imagedata = malloc(filesize * sizeof(uint16_t));
 
 #ifdef __WIN32__
-  if ( (fd = open(path, O_RDONLY|O_BINARY) == -1 ) {
+  if ( (fd = open(path, O_RDONLY|O_BINARY) == -1) ) {
 #else
   if ( (fd = open(path, O_RDONLY)) == -1) {
 #endif
diff --git a/src/Makefile.am b/src/Makefile.am
index 885129b..b9fbc68 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -35,7 +35,7 @@
 
 if COMPILE_MINGW32
 noinst_DATA=libmtp.lib
-W32LF=-export-dynamic
+W32LF=-export-dynamic -liconv -ws2_32
 libmtp.def: libmtp.sym
 	echo "LIBRARY \"@PACKAGE@\"" > libmtp.def
 	echo "DESCRIPTION \"Media Transfer Protocol (MTP) library\"" >> libmtp.def
@@ -50,7 +50,7 @@
 	$(INSTALL) libmtp.lib $(DESTDIR)$(libdir)
 endif
 
-libmtp_la_LDFLAGS=@LDFLAGS@  -no-undefined -export-symbols libmtp.sym -version-info $(W32LF) $(SOVERSION)
+libmtp_la_LDFLAGS=@LDFLAGS@ -no-undefined -export-symbols libmtp.sym -version-info $(SOVERSION) $(W32LF)
 libmtp_la_DEPENDENCIES=libmtp.sym
 
 DISTCLEANFILES = _stdint.h
diff --git a/src/libmtp.c b/src/libmtp.c
index d2245e2..077330a 100644
--- a/src/libmtp.c
+++ b/src/libmtp.c
@@ -54,6 +54,10 @@
 #define USE_WINDOWS_IO_H
 #include <io.h>
 #endif
+#ifdef __WIN32__
+/* Windows does not have rindex */
+#define rindex strrchr
+#endif
 
 /* To enable PTP level debug prints (all ptp_debug(...)), switch on this */
 //#define ENABLE_PTP_DEBUG
@@ -3840,7 +3844,7 @@
 #ifdef USE_WINDOWS_IO_H
   if ( (fd = _open(path, O_RDWR|O_CREAT|O_TRUNC|O_BINARY,_S_IREAD)) == -1 ) {
 #else
-  if ( (fd = open(path, O_RDWR|O_CREAT|O_TRUNC|O_BINARY,S_IRWXU|S_IRGRP)) == -1 ) {
+  if ( (fd = open(path, O_RDWR|O_CREAT|O_TRUNC|O_BINARY,S_IRWXU)) == -1 ) {
 #endif
 #else
 #ifdef __USE_LARGEFILE64
@@ -4044,9 +4048,9 @@
   // Open file
 #ifdef __WIN32__
 #ifdef USE_WINDOWS_IO_H
-  if ( (fd = _open(path, O_RDONLY|O_BINARY) == -1 ) {
+  if ( (fd = _open(path, O_RDONLY|O_BINARY) == -1) ) {
 #else
-  if ( (fd = open(path, O_RDONLY|O_BINARY) == -1 ) {
+  if ( (fd = open(path, O_RDONLY|O_BINARY) == -1) ) {
 #endif
 #else
 #ifdef __USE_LARGEFILE64
@@ -4217,9 +4221,9 @@
   // Open file
 #ifdef __WIN32__
 #ifdef USE_WINDOWS_IO_H
-  if ( (fd = _open(path, O_RDONLY|O_BINARY) == -1 ) {
+  if ( (fd = _open(path, O_RDONLY|O_BINARY) == -1) ) {
 #else
-  if ( (fd = open(path, O_RDONLY|O_BINARY) == -1 ) {
+  if ( (fd = open(path, O_RDONLY|O_BINARY) == -1) ) {
 #endif
 #else
 #ifdef __USE_LARGEFILE64
diff --git a/src/libmtp.h.in b/src/libmtp.h.in
index 55682a1..869e367 100644
--- a/src/libmtp.h.in
+++ b/src/libmtp.h.in
@@ -38,16 +38,10 @@
 #define __WIN32__
 #define snprintf _snprintf
 #define ssize_t SSIZE_T
-#endif
-
-#include <stdio.h>
-#include <usb.h>
-#include <stdint.h>
-
-#ifdef __WIN32__
 /*
- * Windows specific code, types that do not exist in Windows
- * sys/types.h
+ * Types that do not exist in Windows
+ * sys/types.h, but they exist in mingw32
+ * sys/types.h.
  */
 typedef char int8_t;
 typedef unsigned char uint8_t;
@@ -58,6 +52,10 @@
 typedef unsigned __int64 uint64_t;
 #endif
 
+#include <stdio.h>
+#include <usb.h>
+#include <stdint.h>
+
 /**
  * @defgroup types libmtp global type definitions
  * @{
