--- ufraw-0.22/dcraw.cc.orig	2014-02-27 09:46:30.949200000 +0400
+++ ufraw-0.22/dcraw.cc	2014-02-27 09:46:52.898400000 +0400
@@ -446,7 +446,7 @@
 {
   if (fread (pixel, 2, count, ifp) < count) derror();
   if ((order == 0x4949) == (ntohs(0x1234) == 0x1234))
-#if defined(__MINGW64_VERSION_MAJOR) && __MINGW64_VERSION_MAJOR < 4
+#if defined(__MINGW64_VERSION_MAJOR)
     swab ((char *) pixel, (char *) pixel, count*2);
 #else
     swab ((const char *) pixel, (char *) pixel, count*2);
@@ -2397,7 +2397,7 @@
   DCRaw *d = (DCRaw*)cinfo->client_data;
 
   nbytes = fread (jpeg_buffer, 1, 4096, d->ifp);
-#if defined(__MINGW64_VERSION_MAJOR) && __MINGW64_VERSION_MAJOR < 4
+#if defined(__MINGW64_VERSION_MAJOR)
   swab ((char *) jpeg_buffer, (char *) jpeg_buffer, nbytes);
 #else
   swab ((const char *) jpeg_buffer, (char *) jpeg_buffer, nbytes);
@@ -10196,7 +10196,7 @@
 	   FORCC ppm [col*colors+c] = curve[image[soff][c]] >> 8;
       else FORCC ppm2[col*colors+c] = curve[image[soff][c]];
     if (output_bps == 16 && !output_tiff && htons(0x55aa) != 0x55aa)
-#if defined(__MINGW64_VERSION_MAJOR) && __MINGW64_VERSION_MAJOR < 4
+#if defined(__MINGW64_VERSION_MAJOR)
       swab ((char *) ppm2, (char *) ppm2, width*colors*2);
 #else
       swab ((const char *) ppm2, (char *) ppm2, width*colors*2);
