Re: [PHP-CVS] cvs: php-src(PHP_5_3) /ext/standard file.c

2008-03-27 Thread Benjamin Schulz
Can't you check with php_stream_supports_lock here wether the stream- 
wrapper supports locking?


regards,
Benjamin

On 27.03.2008, at 00:06, Ilia Alshanetsky wrote:

iliaa   Wed Mar 26 23:06:48 2008 UTC

 Modified files:  (Branch: PHP_5_3)
   /php-src/ext/standardfile.c
 Log:
 Fixed bug #44501 (LOCK_EX mode in file_put_contents() is impropertly
 handled in combination with url wrappers)


http://cvs.php.net/viewvc.cgi/php-src/ext/standard/file.c?r1=1.409.2.6.2.28.2.9&r2=1.409.2.6.2.28.2.10&diff_format=u
Index: php-src/ext/standard/file.c
diff -u php-src/ext/standard/file.c:1.409.2.6.2.28.2.9 php-src/ext/ 
standard/file.c:1.409.2.6.2.28.2.10
--- php-src/ext/standard/file.c:1.409.2.6.2.28.2.9	Sun Feb 24  
11:45:55 2008

+++ php-src/ext/standard/file.c Wed Mar 26 23:06:47 2008
@@ -21,7 +21,7 @@

+ 
--+

*/

-/* $Id: file.c,v 1.409.2.6.2.28.2.9 2008/02/24 11:45:55 felipe Exp  
$ */
+/* $Id: file.c,v 1.409.2.6.2.28.2.10 2008/03/26 23:06:47 iliaa Exp  
$ */


/* Synced with php 3.0 revision 1.218 1999-06-16 [ssb] */

@@ -596,6 +596,13 @@
if (flags & PHP_FILE_APPEND) {
mode[0] = 'a';
} else if (flags & LOCK_EX) {
+   /* check to make sure we are dealing with a regular file */
+		if (php_memnstr(filename, "://", sizeof("://") - 1, filename +  
filename_len)) {

+   if (strncasecmp(filename, "file://", sizeof("file://") 
- 1)) {
+php_error_docref(NULL TSRMLS_CC, E_WARNING, "Exclusive locks  
may only be set for regular files");

+   RETURN_FALSE;
+   }
+   }
mode[0] = 'c';
}
mode[2] = '\0';



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





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



[PHP-CVS] cvs: php-src /ext/tokenizer Makefile.frag

2008-03-27 Thread Antony Dovgal
tony2001Thu Mar 27 08:32:49 2008 UTC

  Modified files:  
/php-src/ext/tokenizer  Makefile.frag 
  Log:
  add missing EOL and fix build
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/tokenizer/Makefile.frag?r1=1.5&r2=1.6&diff_format=u
Index: php-src/ext/tokenizer/Makefile.frag
diff -u php-src/ext/tokenizer/Makefile.frag:1.5 
php-src/ext/tokenizer/Makefile.frag:1.6
--- php-src/ext/tokenizer/Makefile.frag:1.5 Wed Mar 26 14:46:17 2008
+++ php-src/ext/tokenizer/Makefile.frag Thu Mar 27 08:32:48 2008
@@ -1,2 +1,3 @@
 
-$(builddir)/tokenizer.lo: $(top_srcdir)/Zend/zend_language_parser.c 
$(top_srcdir)/Zend/zend_language_scanner.c
\ No newline at end of file
+$(builddir)/tokenizer.lo: $(top_srcdir)/Zend/zend_language_parser.c 
$(top_srcdir)/Zend/zend_language_scanner.c
+



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



Re: [PHP-CVS] cvs: php-src(PHP_5_3) /ext/standard file.c

2008-03-27 Thread Antony Dovgal
On 27.03.2008 10:15, Benjamin Schulz wrote:
> Can't you check with php_stream_supports_lock here wether the stream- 
> wrapper supports locking?

I agree, that would make much more sense.

-- 
Wbr, 
Antony Dovgal

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



[PHP-CVS] cvs: CVSROOT / avail

2008-03-27 Thread Derick Rethans
derick  Thu Mar 27 10:31:40 2008 UTC

  Modified files:  
/CVSROOTavail 
  Log:
  - Give lukas qaweb karma.
  
  
http://cvs.php.net/viewvc.cgi/CVSROOT/avail?r1=1.1374&r2=1.1375&diff_format=u
Index: CVSROOT/avail
diff -u CVSROOT/avail:1.1374 CVSROOT/avail:1.1375
--- CVSROOT/avail:1.1374Sun Mar 23 14:51:56 2008
+++ CVSROOT/avail   Thu Mar 27 10:31:40 2008
@@ -54,7 +54,7 @@
 
 # The PHP Quality Assurance Team maintains their own website.
 
-avail|ilia,jalal,zak,andre,lyric,jmoore,ronabop,sebastian,joey,jani,torben,hellekin,cnewbill,bate,yohgaki,jan,imajes,derick,msopacua,nohn,edink,iliaa,helly,sean,nlopess,tony2001,zoe,johannes|qaweb
+avail|ilia,jalal,zak,andre,lyric,jmoore,ronabop,sebastian,joey,jani,torben,hellekin,cnewbill,bate,yohgaki,jan,imajes,derick,msopacua,nohn,edink,iliaa,helly,sean,nlopess,tony2001,zoe,johannes,lsmith|qaweb
 
 # Some people get only access to specific languages for phpdoc
 avail|diab,daif,salehcoder|phpdoc-ar



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



[PHP-CVS] cvs: php-src(PHP_5_3) / NEWS /ext/standard/tests/file include_streams.phpt /main fopen_wrappers.c php_streams.h /main/streams plain_wrapper.c streams.c

2008-03-27 Thread Dmitry Stogov
dmitry  Thu Mar 27 10:33:40 2008 UTC

  Added files: (Branch: PHP_5_3)
/php-src/ext/standard/tests/fileinclude_streams.phpt 

  Modified files:  
/php-srcNEWS 
/php-src/main   fopen_wrappers.c php_streams.h 
/php-src/main/streams   plain_wrapper.c streams.c 
  Log:
  Added ability to use stream wrappers in include_path
  
  http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.965.2.151&r2=1.2027.2.547.2.965.2.152&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.965.2.151 
php-src/NEWS:1.2027.2.547.2.965.2.152
--- php-src/NEWS:1.2027.2.547.2.965.2.151   Tue Mar 25 20:00:18 2008
+++ php-src/NEWSThu Mar 27 10:33:39 2008
@@ -4,6 +4,7 @@
 - Removed the experimental RPL (master/slave) functions from mysqli. (Andrey)
 - Dropped zend.ze1_compatibility_mode (Dmitry)
 
+- Added ability to use stream wrappers in include_path (Gregory, Dmitry)
 - Added concept of "delayed early binding" that allows opcode caches to perform
   class declaration (early and/or run-time binding) in exactly the same order
   as vanila php. (Dmitry)
http://cvs.php.net/viewvc.cgi/php-src/main/fopen_wrappers.c?r1=1.175.2.3.2.13.2.9&r2=1.175.2.3.2.13.2.10&diff_format=u
Index: php-src/main/fopen_wrappers.c
diff -u php-src/main/fopen_wrappers.c:1.175.2.3.2.13.2.9 
php-src/main/fopen_wrappers.c:1.175.2.3.2.13.2.10
--- php-src/main/fopen_wrappers.c:1.175.2.3.2.13.2.9Mon Mar 24 09:30:41 2008
+++ php-src/main/fopen_wrappers.c   Thu Mar 27 10:33:40 2008
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: fopen_wrappers.c,v 1.175.2.3.2.13.2.9 2008/03/24 09:30:41 dmitry Exp $ 
*/
+/* $Id: fopen_wrappers.c,v 1.175.2.3.2.13.2.10 2008/03/27 10:33:40 dmitry Exp 
$ */
 
 /* {{{ includes
  */
@@ -447,14 +447,22 @@
char resolved_path[MAXPATHLEN];
char trypath[MAXPATHLEN];
const char *ptr, *end, *p;
+   char *actual_path;
+   php_stream_wrapper *wrapper;
 
if (!filename) {
return NULL;
}
 
-   /* Don't resolve paths which contain protocol */
+   /* Don't resolve paths which contain protocol (except of file://) */
for (p = filename; isalnum((int)*p) || *p == '+' || *p == '-' || *p == 
'.'; p++);
if ((*p == ':') && (p - filename > 1) && (p[1] == '/') && (p[2] == 
'/')) {
+   wrapper = php_stream_locate_url_wrapper(filename, &actual_path, 
STREAM_OPEN_FOR_INCLUDE TSRMLS_CC);
+   if (wrapper == &php_plain_files_wrapper) {
+   if (tsrm_realpath(actual_path, resolved_path 
TSRMLS_CC)) {
+   return estrdup(resolved_path);
+   }
+   }
return NULL;
}
 
@@ -473,7 +481,18 @@
 
ptr = path;
while (ptr && *ptr) {
-   end = strchr(ptr, DEFAULT_DIR_SEPARATOR);
+   /* Check for stream wrapper */
+   int is_stream_wrapper = 0;
+
+   for (p = ptr; isalnum((int)*p) || *p == '+' || *p == '-' || *p 
== '.'; p++);
+   if ((*p == ':') && (p - ptr > 1) && (p[1] == '/') && (p[2] == 
'/')) {
+   /* .:// or ..:// is not a stream wrapper */
+   if (p[-1] != '.' || p[-2] != '.' || p - 2 != ptr) {
+   p += 3;
+   is_stream_wrapper = 1;
+   }
+   }
+   end = strchr(p, DEFAULT_DIR_SEPARATOR);
if (end) {
if ((end-ptr) + 1 + filename_length + 1 >= MAXPATHLEN) {
ptr = end + 1;
@@ -494,7 +513,23 @@
memcpy(trypath+len+1, filename, filename_length+1);
ptr = NULL;
}
-   if (tsrm_realpath(trypath, resolved_path TSRMLS_CC)) {
+   actual_path = trypath;
+   if (is_stream_wrapper) {
+   wrapper = php_stream_locate_url_wrapper(trypath, 
&actual_path, STREAM_OPEN_FOR_INCLUDE TSRMLS_CC);
+   if (!wrapper) {
+   continue;
+   } else if (wrapper != &php_plain_files_wrapper) {
+   if (wrapper->wops->url_stat) {
+   php_stream_statbuf ssb;
+
+   if (SUCCESS == 
wrapper->wops->url_stat(wrapper, trypath, 0, &ssb, NULL TSRMLS_CC)) {
+   return estrdup(trypath);
+   }
+   }
+   continue;
+   }
+   }
+   if (tsrm_realpath(actual_path, resolved_path TSRMLS_CC)) {
return estrdup(resolved_path);
}
} /* end provided path */
@@ -511,7 +546,27 @@
 

[PHP-CVS] cvs: php-src /ext/standard/tests/file include_streams.phpt /main fopen_wrappers.c php_streams.h /main/streams plain_wrapper.c streams.c

2008-03-27 Thread Dmitry Stogov
dmitry  Thu Mar 27 10:33:53 2008 UTC

  Modified files:  
/php-src/main   fopen_wrappers.c php_streams.h 
/php-src/main/streams   plain_wrapper.c streams.c 
/php-src/ext/standard/tests/fileinclude_streams.phpt 
  Log:
  Added ability to use stream wrappers in include_path
  
  http://cvs.php.net/viewvc.cgi/php-src/main/fopen_wrappers.c?r1=1.205&r2=1.206&diff_format=u
Index: php-src/main/fopen_wrappers.c
diff -u php-src/main/fopen_wrappers.c:1.205 php-src/main/fopen_wrappers.c:1.206
--- php-src/main/fopen_wrappers.c:1.205 Mon Mar 24 09:30:54 2008
+++ php-src/main/fopen_wrappers.c   Thu Mar 27 10:33:52 2008
@@ -17,7 +17,7 @@
+--+
  */
 
-/* $Id: fopen_wrappers.c,v 1.205 2008/03/24 09:30:54 dmitry Exp $ */
+/* $Id: fopen_wrappers.c,v 1.206 2008/03/27 10:33:52 dmitry Exp $ */
 
 /* {{{ includes
  */
@@ -455,14 +455,22 @@
char resolved_path[MAXPATHLEN];
char trypath[MAXPATHLEN];
const char *ptr, *end, *p;
+   char *actual_path;
+   php_stream_wrapper *wrapper;
 
if (!filename) {
return NULL;
}
 
-   /* Don't resolve paths which contain protocol */
+   /* Don't resolve paths which contain protocol (except of file://) */
for (p = filename; isalnum((int)*p) || *p == '+' || *p == '-' || *p == 
'.'; p++);
if ((*p == ':') && (p - filename > 1) && (p[1] == '/') && (p[2] == 
'/')) {
+   wrapper = php_stream_locate_url_wrapper(filename, &actual_path, 
STREAM_OPEN_FOR_INCLUDE TSRMLS_CC);
+   if (wrapper == &php_plain_files_wrapper) {
+   if (tsrm_realpath(actual_path, resolved_path 
TSRMLS_CC)) {
+   return estrdup(resolved_path);
+   }
+   }
return NULL;
}
 
@@ -481,7 +489,18 @@
 
ptr = path;
while (ptr && *ptr) {
-   end = strchr(ptr, DEFAULT_DIR_SEPARATOR);
+   /* Check for stream wrapper */
+   int is_stream_wrapper = 0;
+
+   for (p = ptr; isalnum((int)*p) || *p == '+' || *p == '-' || *p 
== '.'; p++);
+   if ((*p == ':') && (p - ptr > 1) && (p[1] == '/') && (p[2] == 
'/')) {
+   /* .:// or ..:// is not a stream wrapper */
+   if (p[-1] != '.' || p[-2] != '.' || p - 2 != ptr) {
+   p += 3;
+   is_stream_wrapper = 1;
+   }
+   }
+   end = strchr(p, DEFAULT_DIR_SEPARATOR);
if (end) {
if ((end-ptr) + 1 + filename_length + 1 >= MAXPATHLEN) {
ptr = end + 1;
@@ -502,7 +521,23 @@
memcpy(trypath+len+1, filename, filename_length+1);
ptr = NULL;
}
-   if (tsrm_realpath(trypath, resolved_path TSRMLS_CC)) {
+   actual_path = trypath;
+   if (is_stream_wrapper) {
+   wrapper = php_stream_locate_url_wrapper(trypath, 
&actual_path, STREAM_OPEN_FOR_INCLUDE TSRMLS_CC);
+   if (!wrapper) {
+   continue;
+   } else if (wrapper != &php_plain_files_wrapper) {
+   if (wrapper->wops->url_stat) {
+   php_stream_statbuf ssb;
+
+   if (SUCCESS == 
wrapper->wops->url_stat(wrapper, trypath, 0, &ssb, NULL TSRMLS_CC)) {
+   return estrdup(trypath);
+   }
+   }
+   continue;
+   }
+   }
+   if (tsrm_realpath(actual_path, resolved_path TSRMLS_CC)) {
return estrdup(resolved_path);
}
} /* end provided path */
@@ -519,7 +554,27 @@
exec_fname_length + 1 + filename_length + 1 < MAXPATHLEN) {
memcpy(trypath, exec_fname, exec_fname_length + 1);
memcpy(trypath+exec_fname_length + 1, filename, 
filename_length+1);
-   if (tsrm_realpath(trypath, resolved_path TSRMLS_CC)) {
+   actual_path = trypath;
+
+   /* Check for stream wrapper */
+   for (p = trypath; isalnum((int)*p) || *p == '+' || *p 
== '-' || *p == '.'; p++);
+   if ((*p == ':') && (p - trypath > 1) && (p[1] == '/') 
&& (p[2] == '/')) {
+   wrapper = 
php_stream_locate_url_wrapper(trypath, &actual_path, STREAM_OPEN_FOR_INCLUDE 
TSRMLS_CC);
+   if (!wrapper) {
+   return NULL;
+   } else if (wrapp

[PHP-CVS] cvs: php-src(PHP_5_3) /ext/standard/tests/file fseek_dir_basic.phpt

2008-03-27 Thread Jani Taskinen
janiThu Mar 27 10:45:03 2008 UTC

  Modified files:  (Branch: PHP_5_3)
/php-src/ext/standard/tests/filefseek_dir_basic.phpt 
  Log:
  - Fix test (readdir() does not sort the results..)
  
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/file/fseek_dir_basic.phpt?r1=1.1.4.2&r2=1.1.4.3&diff_format=u
Index: php-src/ext/standard/tests/file/fseek_dir_basic.phpt
diff -u php-src/ext/standard/tests/file/fseek_dir_basic.phpt:1.1.4.2 
php-src/ext/standard/tests/file/fseek_dir_basic.phpt:1.1.4.3
--- php-src/ext/standard/tests/file/fseek_dir_basic.phpt:1.1.4.2Wed Mar 
19 17:25:47 2008
+++ php-src/ext/standard/tests/file/fseek_dir_basic.phptThu Mar 27 
10:45:03 2008
@@ -12,25 +12,28 @@
 
 echo "call readdir():\n";
 var_dump($dh = opendir($path));
-while( FALSE !== ($file = readdir($dh)) ) {
-   var_dump($file);
-}
+$files = array();
+while( FALSE !== ($files[] = readdir($dh)) ) {}
+sort($files);
+var_dump($files);
+$files = array();
 
 echo "\ncall fseek() on directory resource:\n";
 var_dump(fseek($dh, 20));
 
 echo "call readdir():\n";
-while( FALSE !== ($file = readdir($dh)) ) {
-   var_dump($file);
-}
+while( FALSE !== ($files[] = readdir($dh)) ) {}
+sort($files);
+var_dump($files);
+$files = array();
 
 echo "\ncall fseek() with different arguments on directory resource:\n";
 var_dump(fseek($dh, 20, SEEK_END));
 
 echo "call readdir():\n";
-while( FALSE !== ($file = readdir($dh)) ) {
-   var_dump($file);
-}
+while( FALSE !== ($files[] = readdir($dh)) ) {}
+sort($files);
+var_dump($files);
 
 delete_files($path, 3);
 closedir($dh);
@@ -39,28 +42,55 @@
 ?>
 --EXPECTF--
 call readdir():
-resource(%d) of type (stream)
-string(1) "."
-string(2) ".."
-string(9) "file1.tmp"
-string(9) "file2.tmp"
-string(9) "file3.tmp"
+resource(12) of type (stream)
+array(6) {
+  [0]=>
+  bool(false)
+  [1]=>
+  string(1) "."
+  [2]=>
+  string(2) ".."
+  [3]=>
+  string(9) "file1.tmp"
+  [4]=>
+  string(9) "file2.tmp"
+  [5]=>
+  string(9) "file3.tmp"
+}
 
 call fseek() on directory resource:
 int(0)
 call readdir():
-string(1) "."
-string(2) ".."
-string(9) "file1.tmp"
-string(9) "file2.tmp"
-string(9) "file3.tmp"
+array(6) {
+  [0]=>
+  bool(false)
+  [1]=>
+  string(1) "."
+  [2]=>
+  string(2) ".."
+  [3]=>
+  string(9) "file1.tmp"
+  [4]=>
+  string(9) "file2.tmp"
+  [5]=>
+  string(9) "file3.tmp"
+}
 
 call fseek() with different arguments on directory resource:
 int(0)
 call readdir():
-string(1) "."
-string(2) ".."
-string(9) "file1.tmp"
-string(9) "file2.tmp"
-string(9) "file3.tmp"
+array(6) {
+  [0]=>
+  bool(false)
+  [1]=>
+  string(1) "."
+  [2]=>
+  string(2) ".."
+  [3]=>
+  string(9) "file1.tmp"
+  [4]=>
+  string(9) "file2.tmp"
+  [5]=>
+  string(9) "file3.tmp"
+}
 bool(true)



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



[PHP-CVS] cvs: php-src(PHP_5_2) /ext/standard/tests/file fseek_dir_basic.phpt

2008-03-27 Thread Jani Taskinen
janiThu Mar 27 10:45:06 2008 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/standard/tests/filefseek_dir_basic.phpt 
  Log:
  MF53:- Fix test (readdir() does not sort the results..)
  
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/file/fseek_dir_basic.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u
Index: php-src/ext/standard/tests/file/fseek_dir_basic.phpt
diff -u php-src/ext/standard/tests/file/fseek_dir_basic.phpt:1.1.2.1 
php-src/ext/standard/tests/file/fseek_dir_basic.phpt:1.1.2.2
--- php-src/ext/standard/tests/file/fseek_dir_basic.phpt:1.1.2.1Wed Mar 
19 17:23:28 2008
+++ php-src/ext/standard/tests/file/fseek_dir_basic.phptThu Mar 27 
10:45:06 2008
@@ -12,25 +12,28 @@
 
 echo "call readdir():\n";
 var_dump($dh = opendir($path));
-while( FALSE !== ($file = readdir($dh)) ) {
-   var_dump($file);
-}
+$files = array();
+while( FALSE !== ($files[] = readdir($dh)) ) {}
+sort($files);
+var_dump($files);
+$files = array();
 
 echo "\ncall fseek() on directory resource:\n";
 var_dump(fseek($dh, 20));
 
 echo "call readdir():\n";
-while( FALSE !== ($file = readdir($dh)) ) {
-   var_dump($file);
-}
+while( FALSE !== ($files[] = readdir($dh)) ) {}
+sort($files);
+var_dump($files);
+$files = array();
 
 echo "\ncall fseek() with different arguments on directory resource:\n";
 var_dump(fseek($dh, 20, SEEK_END));
 
 echo "call readdir():\n";
-while( FALSE !== ($file = readdir($dh)) ) {
-   var_dump($file);
-}
+while( FALSE !== ($files[] = readdir($dh)) ) {}
+sort($files);
+var_dump($files);
 
 delete_files($path, 3);
 closedir($dh);
@@ -39,28 +42,55 @@
 ?>
 --EXPECTF--
 call readdir():
-resource(%d) of type (stream)
-string(1) "."
-string(2) ".."
-string(9) "file1.tmp"
-string(9) "file2.tmp"
-string(9) "file3.tmp"
+resource(12) of type (stream)
+array(6) {
+  [0]=>
+  bool(false)
+  [1]=>
+  string(1) "."
+  [2]=>
+  string(2) ".."
+  [3]=>
+  string(9) "file1.tmp"
+  [4]=>
+  string(9) "file2.tmp"
+  [5]=>
+  string(9) "file3.tmp"
+}
 
 call fseek() on directory resource:
 int(0)
 call readdir():
-string(1) "."
-string(2) ".."
-string(9) "file1.tmp"
-string(9) "file2.tmp"
-string(9) "file3.tmp"
+array(6) {
+  [0]=>
+  bool(false)
+  [1]=>
+  string(1) "."
+  [2]=>
+  string(2) ".."
+  [3]=>
+  string(9) "file1.tmp"
+  [4]=>
+  string(9) "file2.tmp"
+  [5]=>
+  string(9) "file3.tmp"
+}
 
 call fseek() with different arguments on directory resource:
 int(0)
 call readdir():
-string(1) "."
-string(2) ".."
-string(9) "file1.tmp"
-string(9) "file2.tmp"
-string(9) "file3.tmp"
+array(6) {
+  [0]=>
+  bool(false)
+  [1]=>
+  string(1) "."
+  [2]=>
+  string(2) ".."
+  [3]=>
+  string(9) "file1.tmp"
+  [4]=>
+  string(9) "file2.tmp"
+  [5]=>
+  string(9) "file3.tmp"
+}
 bool(true)



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



[PHP-CVS] cvs: php-src(PHP_5_2) /ext/standard credits_ext.h

2008-03-27 Thread Andrey Hristov
andrey  Thu Mar 27 14:48:00 2008 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/standard   credits_ext.h 
  Log:
  Recreate
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/credits_ext.h?r1=1.30.2.6.2.6&r2=1.30.2.6.2.7&diff_format=u
Index: php-src/ext/standard/credits_ext.h
diff -u php-src/ext/standard/credits_ext.h:1.30.2.6.2.6 
php-src/ext/standard/credits_ext.h:1.30.2.6.2.7
--- php-src/ext/standard/credits_ext.h:1.30.2.6.2.6 Sun Apr 29 00:43:11 2007
+++ php-src/ext/standard/credits_ext.h  Thu Mar 27 14:48:00 2008
@@ -79,7 +79,7 @@
 CREDIT_LINE("System V Semaphores", "Tom May");
 CREDIT_LINE("System V Shared Memory", "Christian Cartus");
 CREDIT_LINE("tidy", "John Coggeshall, Ilia Alshanetsky");
-CREDIT_LINE("tokenizer", "Andrei Zmievski");
+CREDIT_LINE("tokenizer", "Andrei Zmievski, Johannes Schlueter");
 CREDIT_LINE("WDDX", "Andrei Zmievski");
 CREDIT_LINE("XMLReader", "Rob Richards");
 CREDIT_LINE("xmlrpc", "Dan Libby");



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



[PHP-CVS] cvs: php-src /ext/standard/tests/file fseek_dir_basic.phpt

2008-03-27 Thread Jani Taskinen
janiThu Mar 27 15:06:16 2008 UTC

  Modified files:  
/php-src/ext/standard/tests/filefseek_dir_basic.phpt 
  Log:
  MFB: fix test
  
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/file/fseek_dir_basic.phpt?r1=1.2&r2=1.3&diff_format=u
Index: php-src/ext/standard/tests/file/fseek_dir_basic.phpt
diff -u php-src/ext/standard/tests/file/fseek_dir_basic.phpt:1.2 
php-src/ext/standard/tests/file/fseek_dir_basic.phpt:1.3
--- php-src/ext/standard/tests/file/fseek_dir_basic.phpt:1.2Wed Mar 19 
17:26:36 2008
+++ php-src/ext/standard/tests/file/fseek_dir_basic.phptThu Mar 27 
15:06:16 2008
@@ -12,25 +12,28 @@
 
 echo "call readdir():\n";
 var_dump($dh = opendir($path));
-while( FALSE !== ($file = readdir($dh)) ) {
-   var_dump($file);
-}
+$files = array();
+while( FALSE !== ($files[] = readdir($dh)) ) {}
+sort($files);
+var_dump($files);
+$files = array();
 
 echo "\ncall fseek() on directory resource:\n";
 var_dump(fseek($dh, 20));
 
 echo "call readdir():\n";
-while( FALSE !== ($file = readdir($dh)) ) {
-   var_dump($file);
-}
+while( FALSE !== ($files[] = readdir($dh)) ) {}
+sort($files);
+var_dump($files);
+$files = array();
 
 echo "\ncall fseek() with different arguments on directory resource:\n";
 var_dump(fseek($dh, 20, SEEK_END));
 
 echo "call readdir():\n";
-while( FALSE !== ($file = readdir($dh)) ) {
-   var_dump($file);
-}
+while( FALSE !== ($files[] = readdir($dh)) ) {}
+sort($files);
+var_dump($files);
 
 delete_files($path, 3);
 closedir($dh);
@@ -39,55 +42,109 @@
 ?>
 --EXPECTF--
 call readdir():
-resource(%d) of type (stream)
-string(1) "."
-string(2) ".."
-string(9) "file1.tmp"
-string(9) "file2.tmp"
-string(9) "file3.tmp"
+resource(12) of type (stream)
+array(6) {
+  [0]=>
+  bool(false)
+  [1]=>
+  string(1) "."
+  [2]=>
+  string(2) ".."
+  [3]=>
+  string(9) "file1.tmp"
+  [4]=>
+  string(9) "file2.tmp"
+  [5]=>
+  string(9) "file3.tmp"
+}
 
 call fseek() on directory resource:
 int(0)
 call readdir():
-string(1) "."
-string(2) ".."
-string(9) "file1.tmp"
-string(9) "file2.tmp"
-string(9) "file3.tmp"
+array(6) {
+  [0]=>
+  bool(false)
+  [1]=>
+  string(1) "."
+  [2]=>
+  string(2) ".."
+  [3]=>
+  string(9) "file1.tmp"
+  [4]=>
+  string(9) "file2.tmp"
+  [5]=>
+  string(9) "file3.tmp"
+}
 
 call fseek() with different arguments on directory resource:
 int(0)
 call readdir():
-string(1) "."
-string(2) ".."
-string(9) "file1.tmp"
-string(9) "file2.tmp"
-string(9) "file3.tmp"
+array(6) {
+  [0]=>
+  bool(false)
+  [1]=>
+  string(1) "."
+  [2]=>
+  string(2) ".."
+  [3]=>
+  string(9) "file1.tmp"
+  [4]=>
+  string(9) "file2.tmp"
+  [5]=>
+  string(9) "file3.tmp"
+}
 bool(true)
 --UEXPECTF--
 call readdir():
-resource(%d) of type (stream)
-unicode(1) "."
-unicode(2) ".."
-unicode(9) "file1.tmp"
-unicode(9) "file2.tmp"
-unicode(9) "file3.tmp"
+resource(12) of type (stream)
+array(6) {
+  [0]=>
+  bool(false)
+  [1]=>
+  unicode(1) "."
+  [2]=>
+  unicode(2) ".."
+  [3]=>
+  unicode(9) "file1.tmp"
+  [4]=>
+  unicode(9) "file2.tmp"
+  [5]=>
+  unicode(9) "file3.tmp"
+}
 
 call fseek() on directory resource:
 int(0)
 call readdir():
-unicode(1) "."
-unicode(2) ".."
-unicode(9) "file1.tmp"
-unicode(9) "file2.tmp"
-unicode(9) "file3.tmp"
+array(6) {
+  [0]=>
+  bool(false)
+  [1]=>
+  unicode(1) "."
+  [2]=>
+  unicode(2) ".."
+  [3]=>
+  unicode(9) "file1.tmp"
+  [4]=>
+  unicode(9) "file2.tmp"
+  [5]=>
+  unicode(9) "file3.tmp"
+}
 
 call fseek() with different arguments on directory resource:
 int(0)
 call readdir():
-unicode(1) "."
-unicode(2) ".."
-unicode(9) "file1.tmp"
-unicode(9) "file2.tmp"
-unicode(9) "file3.tmp"
+array(6) {
+  [0]=>
+  bool(false)
+  [1]=>
+  unicode(1) "."
+  [2]=>
+  unicode(2) ".."
+  [3]=>
+  unicode(9) "file1.tmp"
+  [4]=>
+  unicode(9) "file2.tmp"
+  [5]=>
+  unicode(9) "file3.tmp"
+}
 bool(true)



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



Re: [PHP-CVS] cvs: php-src(PHP_5_3) /ext/standard file.c

2008-03-27 Thread Benjamin Schulz
Can't you check with php_stream_supports_lock here wether the  
stream-wrapper supports locking?



That requires an open stream.


And why don't you raise the warning after opening the stream? There is  
this check anyway:


	if (flags & LOCK_EX && (!php_stream_supports_lock(stream) ||  
php_stream_lock(stream, LOCK_EX))) {

php_stream_close(stream);
RETURN_FALSE;
}





On 27-Mar-08, at 3:15 AM, Benjamin Schulz wrote:


regards,
Benjamin

On 27.03.2008, at 00:06, Ilia Alshanetsky wrote:

iliaa   Wed Mar 26 23:06:48 2008 UTC

Modified files:  (Branch: PHP_5_3)
 /php-src/ext/standard  file.c
Log:
Fixed bug #44501 (LOCK_EX mode in file_put_contents() is impropertly
handled in combination with url wrappers)


http://cvs.php.net/viewvc.cgi/php-src/ext/standard/file.c?r1=1.409.2.6.2.28.2.9&r2=1.409.2.6.2.28.2.10&diff_format=u
Index: php-src/ext/standard/file.c
diff -u php-src/ext/standard/file.c:1.409.2.6.2.28.2.9 php-src/ext/ 
standard/file.c:1.409.2.6.2.28.2.10
--- php-src/ext/standard/file.c:1.409.2.6.2.28.2.9	Sun Feb 24  
11:45:55 2008

+++ php-src/ext/standard/file.c Wed Mar 26 23:06:47 2008
@@ -21,7 +21,7 @@
  
+ 
--+

*/

-/* $Id: file.c,v 1.409.2.6.2.28.2.9 2008/02/24 11:45:55 felipe  
Exp $ */
+/* $Id: file.c,v 1.409.2.6.2.28.2.10 2008/03/26 23:06:47 iliaa  
Exp $ */


/* Synced with php 3.0 revision 1.218 1999-06-16 [ssb] */

@@ -596,6 +596,13 @@
if (flags & PHP_FILE_APPEND) {
mode[0] = 'a';
} else if (flags & LOCK_EX) {
+   /* check to make sure we are dealing with a regular file */
+		if (php_memnstr(filename, "://", sizeof("://") - 1, filename +  
filename_len)) {

+   if (strncasecmp(filename, "file://", sizeof("file://") 
- 1)) {
+php_error_docref(NULL TSRMLS_CC, E_WARNING, "Exclusive locks  
may only be set for regular files");

+   RETURN_FALSE;
+   }
+   }
mode[0] = 'c';
}
mode[2] = '\0';



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






Ilia Alshanetsky








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



[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS configure.in /main php_version.h

2008-03-27 Thread Ilia Alshanetsky
iliaa   Thu Mar 27 22:44:03 2008 UTC

  Modified files:  (Branch: PHP_5_2)
/php-srcNEWS configure.in 
/php-src/main   php_version.h 
  Log:
  5.2.6RC3
  
  
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1124&r2=1.2027.2.547.2.1125&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.1124 php-src/NEWS:1.2027.2.547.2.1125
--- php-src/NEWS:1.2027.2.547.2.1124Thu Mar 20 16:49:41 2008
+++ php-src/NEWSThu Mar 27 22:44:02 2008
@@ -1,6 +1,6 @@
 PHPNEWS
 |||
-?? Mar 2008 , PHP 5.2.6
+27 Mar 2008 , PHP 5.2.6RC3
 - Properly address incomplete multibyte chars inside escapeshellcmd() (Ilia,
   Stefan Esser)
 - Fix integer overflow in printf(). (Stas, Maksymilian Aciemowicz)
http://cvs.php.net/viewvc.cgi/php-src/configure.in?r1=1.579.2.52.2.89&r2=1.579.2.52.2.90&diff_format=u
Index: php-src/configure.in
diff -u php-src/configure.in:1.579.2.52.2.89 
php-src/configure.in:1.579.2.52.2.90
--- php-src/configure.in:1.579.2.52.2.89Fri Mar  7 00:36:12 2008
+++ php-src/configure.inThu Mar 27 22:44:02 2008
@@ -1,4 +1,4 @@
-## $Id: configure.in,v 1.579.2.52.2.89 2008/03/07 00:36:12 iliaa Exp $ -*- 
autoconf -*-
+## $Id: configure.in,v 1.579.2.52.2.90 2008/03/27 22:44:02 iliaa Exp $ -*- 
autoconf -*-
 dnl ## Process this file with autoconf to produce a configure script.
 
 divert(1)
@@ -42,7 +42,7 @@
 PHP_MAJOR_VERSION=5
 PHP_MINOR_VERSION=2
 PHP_RELEASE_VERSION=6
-PHP_EXTRA_VERSION="RC3-dev"
+PHP_EXTRA_VERSION="RC3"
 
PHP_VERSION="$PHP_MAJOR_VERSION.$PHP_MINOR_VERSION.$PHP_RELEASE_VERSION$PHP_EXTRA_VERSION"
 PHP_VERSION_ID=`expr [$]PHP_MAJOR_VERSION \* 1 + [$]PHP_MINOR_VERSION \* 
100 + [$]PHP_RELEASE_VERSION`
 
http://cvs.php.net/viewvc.cgi/php-src/main/php_version.h?r1=1.112.2.37.2.61&r2=1.112.2.37.2.62&diff_format=u
Index: php-src/main/php_version.h
diff -u php-src/main/php_version.h:1.112.2.37.2.61 
php-src/main/php_version.h:1.112.2.37.2.62
--- php-src/main/php_version.h:1.112.2.37.2.61  Fri Mar  7 00:36:12 2008
+++ php-src/main/php_version.h  Thu Mar 27 22:44:02 2008
@@ -3,6 +3,6 @@
 #define PHP_MAJOR_VERSION 5
 #define PHP_MINOR_VERSION 2
 #define PHP_RELEASE_VERSION 6
-#define PHP_EXTRA_VERSION "RC3-dev"
-#define PHP_VERSION "5.2.6RC3-dev"
+#define PHP_EXTRA_VERSION "RC3"
+#define PHP_VERSION "5.2.6RC3"
 #define PHP_VERSION_ID 50206



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



[PHP-CVS] cvs: php-src(PHP_5_2) / NEWS configure.in /main php_version.h

2008-03-27 Thread Ilia Alshanetsky
iliaa   Thu Mar 27 22:53:49 2008 UTC

  Modified files:  (Branch: PHP_5_2)
/php-srcNEWS configure.in 
/php-src/main   php_version.h 
  Log:
  Back to dev
  
  
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.1125&r2=1.2027.2.547.2.1126&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.1125 php-src/NEWS:1.2027.2.547.2.1126
--- php-src/NEWS:1.2027.2.547.2.1125Thu Mar 27 22:44:02 2008
+++ php-src/NEWSThu Mar 27 22:53:49 2008
@@ -1,6 +1,8 @@
 PHPNEWS
 |||
-27 Mar 2008 , PHP 5.2.6RC3
+?? Apr 2008, PHP 5.2.6
+
+27 Mar 2008, PHP 5.2.6RC3
 - Properly address incomplete multibyte chars inside escapeshellcmd() (Ilia,
   Stefan Esser)
 - Fix integer overflow in printf(). (Stas, Maksymilian Aciemowicz)
http://cvs.php.net/viewvc.cgi/php-src/configure.in?r1=1.579.2.52.2.90&r2=1.579.2.52.2.91&diff_format=u
Index: php-src/configure.in
diff -u php-src/configure.in:1.579.2.52.2.90 
php-src/configure.in:1.579.2.52.2.91
--- php-src/configure.in:1.579.2.52.2.90Thu Mar 27 22:44:02 2008
+++ php-src/configure.inThu Mar 27 22:53:49 2008
@@ -1,4 +1,4 @@
-## $Id: configure.in,v 1.579.2.52.2.90 2008/03/27 22:44:02 iliaa Exp $ -*- 
autoconf -*-
+## $Id: configure.in,v 1.579.2.52.2.91 2008/03/27 22:53:49 iliaa Exp $ -*- 
autoconf -*-
 dnl ## Process this file with autoconf to produce a configure script.
 
 divert(1)
@@ -42,7 +42,7 @@
 PHP_MAJOR_VERSION=5
 PHP_MINOR_VERSION=2
 PHP_RELEASE_VERSION=6
-PHP_EXTRA_VERSION="RC3"
+PHP_EXTRA_VERSION="RC4-dev"
 
PHP_VERSION="$PHP_MAJOR_VERSION.$PHP_MINOR_VERSION.$PHP_RELEASE_VERSION$PHP_EXTRA_VERSION"
 PHP_VERSION_ID=`expr [$]PHP_MAJOR_VERSION \* 1 + [$]PHP_MINOR_VERSION \* 
100 + [$]PHP_RELEASE_VERSION`
 
http://cvs.php.net/viewvc.cgi/php-src/main/php_version.h?r1=1.112.2.37.2.62&r2=1.112.2.37.2.63&diff_format=u
Index: php-src/main/php_version.h
diff -u php-src/main/php_version.h:1.112.2.37.2.62 
php-src/main/php_version.h:1.112.2.37.2.63
--- php-src/main/php_version.h:1.112.2.37.2.62  Thu Mar 27 22:44:02 2008
+++ php-src/main/php_version.h  Thu Mar 27 22:53:49 2008
@@ -3,6 +3,6 @@
 #define PHP_MAJOR_VERSION 5
 #define PHP_MINOR_VERSION 2
 #define PHP_RELEASE_VERSION 6
-#define PHP_EXTRA_VERSION "RC3"
-#define PHP_VERSION "5.2.6RC3"
+#define PHP_EXTRA_VERSION "RC4-dev"
+#define PHP_VERSION "5.2.6RC4-dev"
 #define PHP_VERSION_ID 50206



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