helly           Tue Nov  6 12:12:58 2007 UTC

  Modified files:              (Branch: PHP_5_3)
    /php-src    NEWS 
    /php-src/main/streams       plain_wrapper.c 
    /php-src/ext/standard       basic_functions.c 
  Log:
  - MFH Add glob stream wrapper
  [DOC] The glob stream wrapper allows stuff like this:
  php -r '$it = new DirectoryIterator("glob://ext/spl/*.c");
          foreach($it as $f) var_dump($f);'
  
  
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.965.2.42&r2=1.2027.2.547.2.965.2.43&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.965.2.42 
php-src/NEWS:1.2027.2.547.2.965.2.43
--- php-src/NEWS:1.2027.2.547.2.965.2.42        Tue Nov  6 09:45:37 2007
+++ php-src/NEWS        Tue Nov  6 12:12:58 2007
@@ -1,6 +1,7 @@
 PHP                                                                        NEWS
 |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
 ?? ??? 20??, PHP 5.3.0
+- Added glob stream. (Marcus)
 - Added 3 Firebird specific attributes that can be set via PDO::setAttribute()
   to control formatting of date/timestamp columns: PDO::FB_ATTR_DATE_FORMAT,
   PDO::FB_ATTR_TIME_FORMAT and PDO::FB_ATTR_TIMESTAMP_FORMAT. 
http://cvs.php.net/viewvc.cgi/php-src/main/streams/plain_wrapper.c?r1=1.52.2.6.2.23.2.2&r2=1.52.2.6.2.23.2.3&diff_format=u
Index: php-src/main/streams/plain_wrapper.c
diff -u php-src/main/streams/plain_wrapper.c:1.52.2.6.2.23.2.2 
php-src/main/streams/plain_wrapper.c:1.52.2.6.2.23.2.3
--- php-src/main/streams/plain_wrapper.c:1.52.2.6.2.23.2.2      Thu Nov  1 
17:32:44 2007
+++ php-src/main/streams/plain_wrapper.c        Tue Nov  6 12:12:58 2007
@@ -16,7 +16,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: plain_wrapper.c,v 1.52.2.6.2.23.2.2 2007/11/01 17:32:44 jani Exp $ */
+/* $Id: plain_wrapper.c,v 1.52.2.6.2.23.2.3 2007/11/06 12:12:58 helly Exp $ */
 
 #include "php.h"
 #include "php_globals.h"
@@ -338,7 +338,7 @@
                           so script can retry if desired */
                        ret = read(data->fd, buf, count);
                }
-
+               
                stream->eof = (ret == 0 || (ret == (size_t)-1 && errno != 
EWOULDBLOCK && errno != EINTR && errno != EBADF));
                                
        } else {
@@ -843,6 +843,10 @@
        DIR *dir = NULL;
        php_stream *stream = NULL;
 
+       if (options & STREAM_USE_GLOB_DIR_OPEN) {
+               return 
php_glob_stream_wrapper.wops->dir_opener(&php_glob_stream_wrapper, path, mode, 
options, opened_path, context STREAMS_REL_CC TSRMLS_CC);
+       }
+
        if (((options & STREAM_DISABLE_OPEN_BASEDIR) == 0) && 
php_check_open_basedir(path TSRMLS_CC)) {
                return NULL;
        }
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/basic_functions.c?r1=1.725.2.31.2.64.2.9&r2=1.725.2.31.2.64.2.10&diff_format=u
Index: php-src/ext/standard/basic_functions.c
diff -u php-src/ext/standard/basic_functions.c:1.725.2.31.2.64.2.9 
php-src/ext/standard/basic_functions.c:1.725.2.31.2.64.2.10
--- php-src/ext/standard/basic_functions.c:1.725.2.31.2.64.2.9  Fri Nov  2 
19:40:38 2007
+++ php-src/ext/standard/basic_functions.c      Tue Nov  6 12:12:58 2007
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: basic_functions.c,v 1.725.2.31.2.64.2.9 2007/11/02 19:40:38 jani Exp $ 
*/
+/* $Id: basic_functions.c,v 1.725.2.31.2.64.2.10 2007/11/06 12:12:58 helly Exp 
$ */
 
 #include "php.h"
 #include "php_streams.h"
@@ -4026,6 +4026,7 @@
 
        php_register_url_stream_wrapper("php", &php_stream_php_wrapper 
TSRMLS_CC);
        php_register_url_stream_wrapper("file", &php_plain_files_wrapper 
TSRMLS_CC);
+       php_register_url_stream_wrapper("glob", &php_glob_stream_wrapper 
TSRMLS_CC);
        php_register_url_stream_wrapper("data", &php_stream_rfc2397_wrapper 
TSRMLS_CC);
 #ifndef PHP_CURL_URL_WRAPPERS
        php_register_url_stream_wrapper("http", &php_stream_http_wrapper 
TSRMLS_CC);

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to