diff --git a/tests/runtests.pl b/tests/runtests.pl
index ad37504d1038323baf89f1e3e3d9699448e1ab03..b02b9f449741d1e8b795332c9d3b2b949ac25337 100755
--- a/tests/runtests.pl
+++ b/tests/runtests.pl
@@ -659,12 +659,51 @@ sub checkcurl {
 
         if($_ =~ /^curl/) {
             $curl = $_;
-
             $curl =~ s/^(.*)(libcurl.*)/$1/g;
             $libcurl = $2;
-
-           if ($curl =~ /win32/)
-           {
+            if($curl =~ /mingw32/) {
+                # This is a windows minw32 build, we need to translate the
+                # given path to the "actual" windows path.
+
+                my @m = `mount`;
+                my $matchlen;
+                my $bestmatch;
+                my $mount;
+
+# example mount output:
+# C:\DOCUME~1\Temp on /tmp type user (binmode,noumount)
+# c:\ActiveState\perl on /perl type user (binmode)
+# C:\msys\1.0\bin on /usr/bin type user (binmode,cygexec,noumount)
+# C:\msys\1.0\bin on /bin type user (binmode,cygexec,noumount)
+
+                foreach $mount (@m) {
+                    if( $mount =~ /(.*) on ([^ ]*) type /) {
+                        my ($mingw, $real)=($2, $1);
+                        if($pwd =~ /^$mingw/) {
+                            # the path we got from pwd starts with the path
+                            # we found on this line in the mount output
+
+                            my $len = length($real);
+                            if($len > $matchlen) {
+                                # we remember the match that is the longest
+                                $matchlen = $len;
+                                $bestmatch = $real;
+                            }
+                        }
+                    }
+                }
+                if(!$matchlen) {
+                    print "Serious error, can't find our \"real\" path!\n";
+                }
+                else {
+                    # now prepend the prefix from the mount command to build
+                    # our "actual path"
+                    $pwd = "$bestmatch$pwd";
+                }
+                $pwd =~ s#\\#/#g;
+            }
+            elsif ($curl =~ /win32/)
+            {
                # Native Windows builds don't understand the
                # output of cygwin's pwd.  It will be
                # something like /cygdrive/c/<some path>.