]> git.ipfire.org Git - thirdparty/AWStats.git/commitdiff
Fixed wrong compression results when using mod_gzip and %gzip_ratio tag.
authoreldy <>
Mon, 15 Mar 2004 19:47:53 +0000 (19:47 +0000)
committereldy <>
Mon, 15 Mar 2004 19:47:53 +0000 (19:47 +0000)
wwwroot/cgi-bin/awstats.pl

index 521652f015a7df7091c9f1be4174fb835da375fb..80dea0ec65df07432d76cfe55b74b32c6443399e 100644 (file)
@@ -6214,7 +6214,15 @@ if ($UpdateStats && $FrameName ne 'index' && $FrameName ne 'mainleft') { # Updat
                        $_filetypes_h{$extension}++;
                        $_filetypes_k{$extension}+=int($field[$pos_size]);      # TODO can cause a warning
                        # Compression
-                       if ($pos_compratio>=0 && ($field[$pos_compratio] =~ /(\d+)/)) { # Calculate in/out size from percentage
+                       if ($pos_gzipin>=0 && $field[$pos_gzipin]) {                                            # If in and out in log
+                               my ($notused,$in)=split(/:/,$field[$pos_gzipin]);
+                               my ($notused1,$out,$notused2)=split(/:/,$field[$pos_gzipout]);
+                               if ($out) {
+                                       $_filetypes_gz_in{$extension}+=$in;
+                                       $_filetypes_gz_out{$extension}+=$out;
+                               }
+                       }
+                       elsif ($pos_compratio>=0 && ($field[$pos_compratio] =~ /(\d+)/)) {      # Calculate in/out size from percentage
                                if ($fieldlib[$pos_compratio] eq 'gzipratio') {
                                        # with mod_gzip:    % is size (before-after)/before (low for jpg) ??????????
                                        $_filetypes_gz_in{$extension}+=int($field[$pos_size]*100/((100-$1)||1));
@@ -6224,14 +6232,6 @@ if ($UpdateStats && $FrameName ne 'index' && $FrameName ne 'mainleft') { # Updat
                                }
                                $_filetypes_gz_out{$extension}+=int($field[$pos_size]);
                        }
-                       elsif ($pos_gzipin>=0 && $field[$pos_gzipin]) { # If in and out in log
-                               my ($notused,$in)=split(/:/,$field[$pos_gzipin]);
-                               my ($notused1,$out,$notused2)=split(/:/,$field[$pos_gzipout]);
-                               if ($out) {
-                                       $_filetypes_gz_in{$extension}+=$in;
-                                       $_filetypes_gz_out{$extension}+=$out;
-                               }
-                       }
                }
 
                # Analyze: Date - Hour - Pages - Hits - Kilo