? .svn
? 447618-filebrowser-drupal-6.patch
? icons/.svn
? translations/.svn
Index: filebrowser.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/filebrowser/filebrowser.module,v
retrieving revision 1.25
diff -u -p -r1.25 filebrowser.module
--- filebrowser.module	18 May 2009 22:09:51 -0000	1.25
+++ filebrowser.module	3 Sep 2009 13:20:04 -0000
@@ -87,21 +87,7 @@ function _filebrowser_download_callback(
   }
 
   $match= array ();
-  if (!_filebrowser_ends_with($node->download_file_name, '.zip')) {
-    foreach ($node->file_listing as $file_name => $file_data) {
-      if ($node->download_file_name == $file_data['name']) {
-        $match= $file_data;
-        break;
-      }
-    }
-    if (empty ($match)) {
-      drupal_not_found();
-      exit ();
-    }
-  } else {
-    if (!function_exists("zip_open")) {
-      return t("No ZIP support found in PHP installation, please contact your administrator");
-    }
+  if (_filebrowser_ends_with($node->download_file_name, '.zip') && function_exists("zip_open")) {
     $zip= new ZipArchive();
     $match['name']= $node->download_file_name;
     $match['mime-type']= 'application/zip';
@@ -123,6 +109,18 @@ function _filebrowser_download_callback(
     }
     $match['size']= filesize($match['path']);
   }
+  else {
+    foreach ($node->file_listing as $file_name => $file_data) {
+      if ($node->download_file_name == $file_data['name']) {
+        $match= $file_data;
+        break;
+      }
+    }
+    if (empty ($match)) {
+      drupal_not_found();
+      exit ();
+    }
+  }
   header('Content-Description: File Transfer');
   header("Cache-Control: public, must-revalidate, max-age=0"); // HTTP/1.1
   header("Pragma: public");
