Sophie

Sophie

distrib > Mandriva > 2009.0 > i586 > by-pkgid > 013553589aca3e2da4f4c2fb7d5eeac7 > files > 5

hardinfo-0.4.2.3-3mdv2009.0.src.rpm

diff -upNr hardinfo-0.4.2.2.orign/arch/common/zlib.h hardinfo-0.4.2.2/arch/common/zlib.h
--- hardinfo-0.4.2.2.orign/arch/common/zlib.h	2007-07-20 16:44:59.000000000 +0200
+++ hardinfo-0.4.2.2/arch/common/zlib.h	2007-09-02 11:01:14.000000000 +0200
@@ -24,15 +24,20 @@ benchmark_zlib(void)
     static gint (*compress) (gchar *dst, glong *dstlen,
                              const gchar *src, glong srclen) = NULL;
 
+    char* libz_locations[5] = {"libz","/lib/libz.so","/lib64/libz.so","/lib/libz.so.1","/lib64/libz.so.1"};
+    int z;
+
     if (!(compress && compressBound)) {
-	libz = g_module_open("libz", G_MODULE_BIND_LAZY);
+	
+	for(z = 0; z<5; z++) {
+		libz = g_module_open(libz_locations[z] , G_MODULE_BIND_LAZY);
+		if(libz) break;
+	}
+
 	if (!libz) {
-            libz = g_module_open("/usr/lib/libz.so", G_MODULE_BIND_LAZY);
-            if (!libz) {
                 g_warning("Cannot load ZLib: %s", g_module_error());
                 return;
-            }
-	}
+        }	
 
 	if (!g_module_symbol(libz, "compress", (gpointer) & compress)
 	    || !g_module_symbol(libz, "compressBound", (gpointer) & compressBound)) {