Per discussion on mailing list, modifying some uses of opendir()/readdir()/closedir...
authorX! <soxred93@users.mediawiki.org>
Thu, 23 Dec 2010 18:20:13 +0000 (18:20 +0000)
committerX! <soxred93@users.mediawiki.org>
Thu, 23 Dec 2010 18:20:13 +0000 (18:20 +0000)
includes/AutoLoader.php
includes/filerepo/ForeignAPIFile.php
includes/filerepo/LocalFile.php
languages/Language.php

index 9f273f8..500f8e5 100644 (file)
@@ -476,7 +476,10 @@ $wgAutoloadLocalClasses = array(
        # includes/libs
        'IEContentAnalyzer' => 'includes/libs/IEContentAnalyzer.php',
        'Spyc' => 'includes/libs/spyc.php',
-
+       'sfFinder' => 'includes/libs/sfFinder.php',
+       'sfGlobToRegex' => 'includes/libs/sfFinder.php',
+       'sfNumberCompare' => 'includes/libs/sfFinder.php',
+       
        # includes/media
        'BitmapHandler' => 'includes/media/Bitmap.php',
        'BitmapHandler_ClientOnly' => 'includes/media/Bitmap_ClientOnly.php',
index 9869188..07b6526 100644 (file)
@@ -168,16 +168,9 @@ class ForeignAPIFile extends File {
                $files = array();
                $dir = $this->getThumbPath( $this->getName() );
                if ( is_dir( $dir ) ) {
-                       $handle = opendir( $dir );
-                       if ( $handle ) {
-                               while ( false !== ( $file = readdir($handle) ) ) {
-                                       if ( $file{0} != '.'  ) {
-                                               $files[] = $file;
-                                       }
-                               }
-                               closedir( $handle );
-                       }
+                       $files = array_map( 'basename', sfFinder::type('file')->maxdepth(0)->discard('.*')->in($dir) );
                }
+               
                return $files;
        }
        
index 51b5ab8..18bcf93 100644 (file)
@@ -599,19 +599,9 @@ class LocalFile extends File {
                $dir = $this->getThumbPath();
 
                if ( is_dir( $dir ) ) {
-                       $handle = opendir( $dir );
-
-                       if ( $handle ) {
-                               while ( false !== ( $file = readdir( $handle ) ) ) {
-                                       if ( $file { 0 } != '.' ) {
-                                               $files[] = $file;
-                                       }
-                               }
-
-                               closedir( $handle );
-                       }
+                       $files = array_map( 'basename', sfFinder::type('file')->maxdepth(0)->discard('.*')->in($dir) );
                }
-
+               
                return $files;
        }
 
index c9d578b..702811b 100644 (file)
@@ -476,14 +476,14 @@ class Language {
 
                global $IP;
                $names = array();
-               $dir = opendir( "$IP/languages/messages" );
-               while ( false !== ( $file = readdir( $dir ) ) ) {
+               
+               foreach( sfFinder::type('file')->maxdepth(0)->in( "$IP/languages/messages" ) as $file ) {
                        $code = self::getCodeFromFileName( $file, 'Messages' );
                        if ( $code && isset( $allNames[$code] ) ) {
                                $names[$code] = $allNames[$code];
                        }
                }
-               closedir( $dir );
+               
                return $names;
        }