File qt-4.7.3-fix-loading-openssl.patch of Package mingw32-libqt4

diff --git a/src/network/ssl/qsslsocket_openssl_symbols.cpp b/src/network/ssl/qsslsocket_openssl_symbols.cpp
index 50c1e72..9c3fcba 100644
--- a/src/network/ssl/qsslsocket_openssl_symbols.cpp
+++ b/src/network/ssl/qsslsocket_openssl_symbols.cpp
@@ -369,18 +369,31 @@ static QPair<QSystemLibrary*, QSystemLibrary*> loadOpenSslWin32()
     pair.first = 0;
     pair.second = 0;
 
-    QSystemLibrary *ssleay32 = new QSystemLibrary(QLatin1String("ssleay32"));
+    QSystemLibrary *ssleay32 = new QSystemLibrary(QLatin1String("libssl-OPENSSL_SONAME"));
     if (!ssleay32->load(false)) {
-        // Cannot find ssleay32.dll
+        // Cannot find libssl-OPENSSL_SONAME.dll
+        // in our cross-build that's the same as ssleay32.dll
         delete ssleay32;
-        return pair;
+        ssleay32 = new QSystemLibrary(QLatin1String("ssleay32"));
+        if (!ssleay32->load(false)) {
+            // Cannot find ssleay32.dll
+            delete ssleay32;
+            return pair;
+        }
     }
 
-    QSystemLibrary *libeay32 = new QSystemLibrary(QLatin1String("libeay32"));
+    QSystemLibrary *libeay32 = new QSystemLibrary(QLatin1String("libcrypto-OPENSSL_SONAME"));
     if (!libeay32->load(false)) {
-        delete ssleay32;
+        // Cannot find libcrypto-OPENSSL_SONAME.dll
+        // in our cross-build that's the same as libeay32.dll
         delete libeay32;
-        return pair;
+        libeay32 = new QSystemLibrary(QLatin1String("libeay32"));
+        if (!libeay32->load(false)) {
+            // Cannot find libeay32.dll
+            delete libeay32;
+            delete ssleay32;
+            return pair;
+        }
     }
 
     pair.first = ssleay32;
@@ -570,7 +583,7 @@ bool q_resolveOpenSslSymbols()
     RESOLVEFUNC(RSA_free, 1450, libs.second )
     RESOLVEFUNC(sk_free, 2571, libs.second )
     RESOLVEFUNC(sk_num, 2576, libs.second )
-    RESOLVEFUNC(sk_pop_free, 2578, libs.second )    
+    RESOLVEFUNC(sk_pop_free, 2578, libs.second )
     RESOLVEFUNC(sk_value, 2585, libs.second )
     RESOLVEFUNC(SSL_CIPHER_description, 11, libs.first )
     RESOLVEFUNC(SSL_CTX_check_private_key, 21, libs.first )
openSUSE Build Service is sponsored by