vfmg (DEVEL): vfmg - don't use sort but try each one when finding ...

sparky sparky at pld-linux.org
Sat Dec 31 19:16:09 CET 2005


Author: sparky                       Date: Sat Dec 31 18:16:09 2005 GMT
Module: vfmg                          Tag: DEVEL
---- Log message:
- don't use sort but try each one when finding best language

---- Files affected:
vfmg:
   vfmg (1.73.2.46 -> 1.73.2.47) 

---- Diffs:

================================================================
Index: vfmg/vfmg
diff -u vfmg/vfmg:1.73.2.46 vfmg/vfmg:1.73.2.47
--- vfmg/vfmg:1.73.2.46	Thu Dec 22 21:56:48 2005
+++ vfmg/vfmg	Sat Dec 31 19:16:04 2005
@@ -309,12 +309,12 @@
 addlang($ENV{'LANG'})	if exists $ENV{'LANG'};
 my $langs = join "|", @lang;
 sub findfirstlang {
-	return 0 if $a eq $b;
 	foreach my $lang (@lang) {
-		return -1 if $a =~ /\[$lang\]/;
-		return 1 if $b =~ /\[$lang\]/;
+		foreach (@_) {
+			return $_ if /\[$lang\]/;
+		}
 	}
-	return 0;
+	return (grep !/\[.*\]/, @_)[0];
 } # }}}
 
 # what is $DESKTOP_FILE_PATH?
@@ -357,11 +357,9 @@
 		}
 		return unless $found;
 	}
-	$tags{_name} =
-	  (sort findfirstlang grep /^Name/, keys %tags)[0];
+	$tags{_name} = findfirstlang( grep /^Name/, keys %tags);
 	$tags{name} = $tags{ $tags{_name} };
-	$tags{_genericname} =
-	  (sort findfirstlang grep /^GenericName/, keys %tags)[0];
+	$tags{_genericname} = findfirstlang( grep /^GenericName/, keys %tags);
 	$tags{genericname} = $tags{ $tags{_genericname} };
 	  
 	$tags{enc}  = exists $tags{Encoding} ? $tags{Encoding} : 'iso-8859-1';
@@ -717,7 +715,7 @@
 							\s*$/ox
 						} <F_IN>,
 					);
-				$dname = $tags{(sort findfirstlang grep /^Name/, keys %tags)[0]};
+				$dname = $tags{findfirstlang( grep /^Name/, keys %tags)};
 				$icon = $tags{Icon};
 				$enc = $tags{Encoding};
 				close F_IN;
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/vfmg/vfmg?r1=1.73.2.46&r2=1.73.2.47&f=u



More information about the pld-cvs-commit mailing list