[PHP-CVS-DAILY] cvs: php-src / ChangeLog

2006-03-24 Thread changelog
changelog   Sat Mar 25 06:31:43 2006 UTC

  Modified files:  
/php-srcChangeLog 
  Log:
  ChangeLog update
  
http://cvs.php.net/viewcvs.cgi/php-src/ChangeLog?r1=1.2294r2=1.2295diff_format=u
Index: php-src/ChangeLog
diff -u php-src/ChangeLog:1.2294 php-src/ChangeLog:1.2295
--- php-src/ChangeLog:1.2294Fri Mar 24 06:31:45 2006
+++ php-src/ChangeLog   Sat Mar 25 06:31:42 2006
@@ -1,3 +1,137 @@
+2006-03-24  Sara Golemon  [EMAIL PROTECTED]
+
+* ext/standard/streamsfuncs.c:
+  Allow bidirectional encoding option via single context param
+
+* ext/standard/streamsfuncs.c:
+  Fix stream_get_line():
+  Checking type isn't nearly as important as checking nullness...
+
+* ext/standard/file.c:
+  Update fgetss() for unicode
+
+2006-03-24  Andrei Zmievski  [EMAIL PROTECTED]
+
+* main/streams/filter.c:
+  This is probably not a test..
+
+2006-03-24  Sara Golemon  [EMAIL PROTECTED]
+
+* main/streams/filter.c
+  main/streams/streams.c:
+  Hook into new unicode conversion error handling API
+
+* ext/standard/streamsfuncs.c
+  main/php_streams.h
+  main/streams/streams.c:
+  Add php_stream_get_record_unicde() API call.
+  Update stream_get_line() userspace function to handle unicode streams.
+
+2006-03-24  Andrei Zmievski  [EMAIL PROTECTED]
+
+* ZendEngine2/zend_unicode.c:
+  Hey! Don't remove vim modeline completely! :)
+
+2006-03-24  Georg Richter  [EMAIL PROTECTED]
+
+* ext/mysqli/tests/bug36745.phpt
+  ext/mysqli/tests/bug36745.phpt:
+  
+  file bug36745.phpt was initially added on branch PHP_5_1.
+
+* (PHP_5_1)
+  NEWS
+  ext/mysqli/mysqli.c:
+  fix and testcase for bug #36745
+
+2006-03-24  Antony Dovgal  [EMAIL PROTECTED]
+
+* (PHP_5_1)
+  ext/simplexml/tests/032.phpt
+  ext/simplexml/tests/033.phpt:
+  add new tests
+
+* ext/simplexml/tests/032.phpt
+  ext/simplexml/tests/032.phpt
+  ext/simplexml/tests/033.phpt
+  ext/simplexml/tests/033.phpt:
+  
+  add new tests
+
+2006-03-24  Georg Richter  [EMAIL PROTECTED]
+
+* (PHP_5_1)
+  ext/mysqli/tests/017.phpt
+  ext/mysqli/tests/049.phpt
+  ext/mysqli/tests/bug34810.phpt:
+  fixed minor problems (thx to tony)
+
+2006-03-24  Antony Dovgal  [EMAIL PROTECTED]
+
+* ZendEngine2/zend_unicode.c:
+  whitespaces - tabs
+  no other changes done
+
+2006-03-24  Dmitry Stogov  [EMAIL PROTECTED]
+
+* NEWS
+  ZendEngine2/zend_unicode.c:
+  Fixed bug #36840 (Memory leak if cast operator throws an exception that 
is
+  caught)
+
+2006-03-24  Georg Richter  [EMAIL PROTECTED]
+
+* (PHP_5_1)
+  ext/mysqli/mysqli.c
+  ext/mysqli/mysqli_api.c
+  ext/mysqli/mysqli_driver.c
+  ext/mysqli/mysqli_nonapi.c
+  ext/mysqli/mysqli_prop.c
+  ext/mysqli/mysqli_repl.c
+  ext/mysqli/mysqli_warning.c
+  ext/mysqli/php_mysqli.h
+  ext/mysqli/tests/002.phpt
+  ext/mysqli/tests/014.phpt
+  ext/mysqli/tests/bug34810.phpt
+  ext/mysqli/tests/bug36802.phpt
+  ext/mysqli/tests/bug36802.phpt
+  ext/mysqli/tests/connect.inc:
+  Fix for bug #36802 (server crashes with invalid/not opened connections)
+   Added status to mysqli_resource:
+   MYSQLI_STATUS_UNKNOWN
+   MYSQLI_STATUS_CLEARED (for future use)
+   MYSQLI_STATUS_INITIALIZED (after mysqli_init and 
mysqli_stmt_init)
+   MYSQLI_STATUS_VALID (for valid objects)
+   removed valid flag
+   changed MYSQLI_FETCH_RESOURCE
+   added last parameter __check which specifies the status
+
+2006-03-24  Dmitry Stogov  [EMAIL PROTECTED]
+
+* (PHP_5_1)
+  NEWS:
+  Fixed SoapFault::getMessage()
+
+2006-03-24  Andrei Zmievski  [EMAIL PROTECTED]
+
+* ZendEngine2/zend_default_classes.c
+  ZendEngine2/zend_operators.c
+  ZendEngine2/zend_unicode.c
+  ZendEngine2/zend_unicode.h:
+  Support warning/exceptions flag for conversion errors.
+
+* main/SAPI.c:
+  UTODO note
+
+2006-03-24  Sara Golemon  [EMAIL PROTECTED]
+
+* main/streams/streams.c:
+  Add some error checking when stream converters are instantiated.
+  
+  Use the global conversion error handlers for output conversion (for now)
+  We may want to make this customizable on a per-stream basis
+  via context param later on...
+
 2006-03-23  Andrei Zmievski  [EMAIL PROTECTED]
 
 * ZendEngine2/zend.c


[PHP-CVS-DAILY] cvs: ZendEngine2 / ChangeLog

2006-03-24 Thread changelog
changelog   Sat Mar 25 06:31:49 2006 UTC

  Modified files:  
/ZendEngine2ChangeLog 
  Log:
  ChangeLog update
  
http://cvs.php.net/viewcvs.cgi/ZendEngine2/ChangeLog?r1=1.885r2=1.886diff_format=u
Index: ZendEngine2/ChangeLog
diff -u ZendEngine2/ChangeLog:1.885 ZendEngine2/ChangeLog:1.886
--- ZendEngine2/ChangeLog:1.885 Fri Mar 24 06:31:51 2006
+++ ZendEngine2/ChangeLog   Sat Mar 25 06:31:49 2006
@@ -1,3 +1,28 @@
+2006-03-24  Andrei Zmievski  [EMAIL PROTECTED]
+
+* zend_unicode.c:
+  Hey! Don't remove vim modeline completely! :)
+
+2006-03-24  Antony Dovgal  [EMAIL PROTECTED]
+
+* zend_unicode.c:
+  whitespaces - tabs
+  no other changes done
+
+2006-03-24  Dmitry Stogov  [EMAIL PROTECTED]
+
+* zend_unicode.c:
+  Fixed bug #36840 (Memory leak if cast operator throws an exception that 
is
+  caught)
+
+2006-03-24  Andrei Zmievski  [EMAIL PROTECTED]
+
+* zend_default_classes.c
+  zend_operators.c
+  zend_unicode.c
+  zend_unicode.h:
+  Support warning/exceptions flag for conversion errors.
+
 2006-03-23  Andrei Zmievski  [EMAIL PROTECTED]
 
 * zend.c
@@ -12835,7 +12860,7 @@
 2003-06-10  Jani Taskinen  [EMAIL PROTECTED]
 
 * zend_multiply.h:
-  - Missing $Id: ChangeLog,v 1.885 2006/03/24 06:31:51 changelog Exp $ tag
+  - Missing $Id: ChangeLog,v 1.886 2006/03/25 06:31:49 changelog Exp $ tag
 
 2003-06-10  James Cox  [EMAIL PROTECTED]
 
@@ -14559,7 +14584,7 @@
   zend_types.h
   zend_variables.c
   zend_variables.h:
-  - Added some missing CVS $Id: ChangeLog,v 1.885 2006/03/24 06:31:51 
changelog Exp $ tags, headers and footers.
+  - Added some missing CVS $Id: ChangeLog,v 1.886 2006/03/25 06:31:49 
changelog Exp $ tags, headers and footers.
 
 2003-01-30  Ilia Alshanetsky  [EMAIL PROTECTED]
 


[PHP-CVS] cvs: php-src(PHP_5_1) / NEWS /ext/soap soap.c

2006-03-24 Thread Dmitry Stogov
dmitry  Fri Mar 24 08:45:54 2006 UTC

  Modified files:  (Branch: PHP_5_1)
/php-srcNEWS 
/php-src/ext/soap   soap.c 
  Log:
  Fixed SoapFault::getMessage()
  
  
http://cvs.php.net/viewcvs.cgi/php-src/NEWS?r1=1.2027.2.478r2=1.2027.2.479diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.478 php-src/NEWS:1.2027.2.479
--- php-src/NEWS:1.2027.2.478   Wed Mar 22 21:56:40 2006
+++ php-src/NEWSFri Mar 24 08:45:54 2006
@@ -10,6 +10,7 @@
   (also fixes bug #36764). (Tony)
 - Removed the E_STRICT deprecation notice from var. (Ilia)
 - Fixed debug_zval_dump() to support private and protected members. (Dmitry)
+- Fixed SoapFault::getMessage(). (Dmitry)
 - Fixed bug #36825 (Exceptions thrown in ArrayObject::offsetGet cause 
   segfault). (Tony)
 - Fixed bug #36820 (Privileged connection with an Oracle password file fails). 
http://cvs.php.net/viewcvs.cgi/php-src/ext/soap/soap.c?r1=1.156.2.22r2=1.156.2.23diff_format=u
Index: php-src/ext/soap/soap.c
diff -u php-src/ext/soap/soap.c:1.156.2.22 php-src/ext/soap/soap.c:1.156.2.23
--- php-src/ext/soap/soap.c:1.156.2.22  Thu Mar 23 10:44:39 2006
+++ php-src/ext/soap/soap.c Fri Mar 24 08:45:54 2006
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: soap.c,v 1.156.2.22 2006/03/23 10:44:39 helly Exp $ */
+/* $Id: soap.c,v 1.156.2.23 2006/03/24 08:45:54 dmitry Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -818,6 +818,10 @@
zend_fcall_info fci;
zval fname;
 
+   if (ZEND_NUM_ARGS()  0) {
+   ZEND_WRONG_PARAM_COUNT();
+   }
+
faultcode   = zend_read_property(soap_fault_class_entry, this_ptr, 
faultcode, sizeof(faultcode)-1, 1 TSRMLS_CC);
faultstring = zend_read_property(soap_fault_class_entry, this_ptr, 
faultstring, sizeof(faultstring)-1, 1 TSRMLS_CC);
file = zend_read_property(soap_fault_class_entry, this_ptr, file, 
sizeof(file)-1, 1 TSRMLS_CC);
@@ -2985,6 +2989,9 @@
}
if (fault_string != NULL) {
add_property_string(obj, faultstring, fault_string, 1);
+#ifdef ZEND_ENGINE_2
+   zend_update_property_string(zend_exception_get_default(), obj, 
message, sizeof(message)-1, fault_string TSRMLS_CC);
+#endif
}
if (fault_code != NULL) {
int soap_version = SOAP_GLOBAL(soap_version);

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



[PHP-CVS] cvs: php-src /ext/soap soap.c

2006-03-24 Thread Dmitry Stogov
dmitry  Fri Mar 24 08:46:14 2006 UTC

  Modified files:  
/php-src/ext/soap   soap.c 
  Log:
  Fixed SoapFault::getMessage()
  
  
http://cvs.php.net/viewcvs.cgi/php-src/ext/soap/soap.c?r1=1.181r2=1.182diff_format=u
Index: php-src/ext/soap/soap.c
diff -u php-src/ext/soap/soap.c:1.181 php-src/ext/soap/soap.c:1.182
--- php-src/ext/soap/soap.c:1.181   Tue Mar 21 12:27:10 2006
+++ php-src/ext/soap/soap.c Fri Mar 24 08:46:14 2006
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: soap.c,v 1.181 2006/03/21 12:27:10 dmitry Exp $ */
+/* $Id: soap.c,v 1.182 2006/03/24 08:46:14 dmitry Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -808,8 +808,8 @@
 
 
 #ifdef ZEND_ENGINE_2
-/* {{{ proto object SoapFault::SoapFault ( string faultcode, string 
faultstring [, string faultactor [, mixed detail [, string faultname [, mixed 
headerfault)
-   SoapFault constructor */
+/* {{{ proto object SoapFault::__toString ()
+ */
 PHP_METHOD(SoapFault, __toString)
 {
zval *faultcode, *faultstring, *file, *line, *trace;
@@ -818,6 +818,10 @@
zend_fcall_info fci;
zval fname;
 
+   if (ZEND_NUM_ARGS()  0) {
+   ZEND_WRONG_PARAM_COUNT();
+   }
+
faultcode   = zend_read_property(soap_fault_class_entry, this_ptr, 
faultcode, sizeof(faultcode)-1, 1 TSRMLS_CC);
faultstring = zend_read_property(soap_fault_class_entry, this_ptr, 
faultstring, sizeof(faultstring)-1, 1 TSRMLS_CC);
file = zend_read_property(soap_fault_class_entry, this_ptr, file, 
sizeof(file)-1, 1 TSRMLS_CC);
@@ -2979,6 +2983,9 @@
}
if (fault_string != NULL) {
add_property_string(obj, faultstring, fault_string, 1);
+#ifdef ZEND_ENGINE_2
+   
zend_update_property_string(zend_exception_get_default(TSRMLS_C), obj, 
message, sizeof(message)-1, fault_string TSRMLS_CC);
+#endif
}
if (fault_code != NULL) {
int soap_version = SOAP_GLOBAL(soap_version);

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



[PHP-CVS] cvs: php-src /ext/unicode unicode_filter.c

2006-03-24 Thread Antony Dovgal
tony2001Fri Mar 24 10:21:56 2006 UTC

  Modified files:  
/php-src/ext/unicodeunicode_filter.c 
  Log:
  first check for NULL, then use the pointer
  
  
http://cvs.php.net/viewcvs.cgi/php-src/ext/unicode/unicode_filter.c?r1=1.5r2=1.6diff_format=u
Index: php-src/ext/unicode/unicode_filter.c
diff -u php-src/ext/unicode/unicode_filter.c:1.5 
php-src/ext/unicode/unicode_filter.c:1.6
--- php-src/ext/unicode/unicode_filter.c:1.5Mon Mar 13 04:40:11 2006
+++ php-src/ext/unicode/unicode_filter.cFri Mar 24 10:21:56 2006
@@ -14,7 +14,7 @@
+--+
 */
 
-/* $Id: unicode_filter.c,v 1.5 2006/03/13 04:40:11 pollita Exp $ */
+/* $Id: unicode_filter.c,v 1.6 2006/03/24 10:21:56 tony2001 Exp $ */
 
 
 #include php.h
@@ -186,13 +186,14 @@
TSRMLS_DC)
 {
php_unicode_filter_data *data;
-   int prefer_unicode = 
php_stream_filter_output_prefer_unicode(thisfilter);
+   int prefer_unicode;
 
if (!thisfilter || !thisfilter-abstract) {
/* Should never happen */
return PSFS_ERR_FATAL;
}
 
+   prefer_unicode = php_stream_filter_output_prefer_unicode(thisfilter);
data = (php_unicode_filter_data *)(thisfilter-abstract);
 
if (prefer_unicode) {

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



[PHP-CVS] cvs: php-src(PHP_5_1) /ext/mysqli/tests 017.phpt 049.phpt bug34810.phpt

2006-03-24 Thread Georg Richter
georg   Fri Mar 24 10:58:52 2006 UTC

  Modified files:  (Branch: PHP_5_1)
/php-src/ext/mysqli/tests   017.phpt 049.phpt bug34810.phpt 
  Log:
  fixed minor problems (thx to tony)
  
  
http://cvs.php.net/viewcvs.cgi/php-src/ext/mysqli/tests/017.phpt?r1=1.7r2=1.7.2.1diff_format=u
Index: php-src/ext/mysqli/tests/017.phpt
diff -u php-src/ext/mysqli/tests/017.phpt:1.7 
php-src/ext/mysqli/tests/017.phpt:1.7.2.1
--- php-src/ext/mysqli/tests/017.phpt:1.7   Fri Jan  7 14:59:59 2005
+++ php-src/ext/mysqli/tests/017.phpt   Fri Mar 24 10:58:52 2006
@@ -12,15 +12,13 @@
 
mysqli_select_db($link, test);
 
-   $stmt = mysqli_prepare($link, SELECT current_user(), database(), 
'foo');
+   $stmt = mysqli_prepare($link, SELECT md5('bar'), database(), 'foo');
mysqli_bind_result($stmt, $c0, $c1, $c2); 
mysqli_execute($stmt);
 
mysqli_fetch($stmt);
mysqli_stmt_close($stmt);
 
-   $c0 = ($c0 == $user . @ . $host) ? 1 : 0;
-
$test = array($c0, $c1, $c2);
 
var_dump($test);
@@ -29,7 +27,7 @@
 --EXPECT--
 array(3) {
   [0]=
-  int(1)
+  string(32) 37b51d194a7513e45b56f6524f2d51f2
   [1]=
   string(4) test
   [2]=
http://cvs.php.net/viewcvs.cgi/php-src/ext/mysqli/tests/049.phpt?r1=1.4r2=1.4.2.1diff_format=u
Index: php-src/ext/mysqli/tests/049.phpt
diff -u php-src/ext/mysqli/tests/049.phpt:1.4 
php-src/ext/mysqli/tests/049.phpt:1.4.2.1
--- php-src/ext/mysqli/tests/049.phpt:1.4   Fri Jan  7 14:59:59 2005
+++ php-src/ext/mysqli/tests/049.phpt   Fri Mar 24 10:58:52 2006
@@ -11,14 +11,16 @@
$mysql = mysqli_connect($host, $user, $passwd);
 
$mysql-select_db(test);  
-   $result = $mysql-query(SELECT CURRENT_USER());
+   $result = $mysql-query(SELECT DATABASE());
$row = $result-fetch_row();
$result-close();
 
-   $ok = ($row[0] == $user . @ . $host); 
-   var_dump($ok);
+   var_dump($row);
 
$mysql-close();
 ?
 --EXPECT--
-bool(true)
+array(1) {
+  [0]=
+  string(4) test
+}
http://cvs.php.net/viewcvs.cgi/php-src/ext/mysqli/tests/bug34810.phpt?r1=1.1.2.2r2=1.1.2.3diff_format=u
Index: php-src/ext/mysqli/tests/bug34810.phpt
diff -u php-src/ext/mysqli/tests/bug34810.phpt:1.1.2.2 
php-src/ext/mysqli/tests/bug34810.phpt:1.1.2.3
--- php-src/ext/mysqli/tests/bug34810.phpt:1.1.2.2  Fri Mar 24 09:32:24 2006
+++ php-src/ext/mysqli/tests/bug34810.phpt  Fri Mar 24 10:58:52 2006
@@ -9,10 +9,10 @@
public function connect() {
include connect.inc;
 
-   $link = mysqli::connect($host, $user, $passwd);
+   $link = mysqli_connect($host, $user, $passwd);
var_dump($link); 

-   $link = mysqli::init();
+   $link = mysqli_init();
var_dump($link);

$mysql = new mysqli($host, $user, $passwd, test);

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



[PHP-CVS] cvs: php-src /ext/simplexml/tests 032.phpt 033.phpt

2006-03-24 Thread Antony Dovgal
tony2001Fri Mar 24 12:08:19 2006 UTC

  Added files: 
/php-src/ext/simplexml/tests032.phpt 033.phpt 
  Log:
  add new tests
  
  

http://cvs.php.net/viewcvs.cgi/php-src/ext/simplexml/tests/032.phpt?view=markuprev=1.1
Index: php-src/ext/simplexml/tests/032.phpt
+++ php-src/ext/simplexml/tests/032.phpt
--TEST--
SimpleXML: comparing instances
--SKIPIF--
?php if (!extension_loaded(simplexml)) print skip; ?
--FILE--
?php 
$xml =EOF
people
  person name=Joe/
  person name=John
children
  person name=Joe/
/children
  /person
  person name=Jane/
/people
EOF;

$xml1 =EOF
people
  person name=John
children
  person name=Joe/
/children
  /person
  person name=Jane/
/people
EOF;


$people = simplexml_load_string($xml);
$people1 = simplexml_load_string($xml);
$people2 = simplexml_load_string($xml1);

var_dump($people1 == $people);
var_dump($people2 == $people);
var_dump($people2 == $people1);

?
===DONE===
--EXPECTF--
bool(true)
bool(false)
bool(false)
===DONE===

http://cvs.php.net/viewcvs.cgi/php-src/ext/simplexml/tests/033.phpt?view=markuprev=1.1
Index: php-src/ext/simplexml/tests/033.phpt
+++ php-src/ext/simplexml/tests/033.phpt
--TEST--
SimpleXML: casting instances
--SKIPIF--
?php if (!extension_loaded(simplexml)) print skip; ?
--FILE--
?php

$xml =EOF
people
test
  person name=Joe/
  person name=John
children
  person name=Joe/
/children
  /person
  person name=Jane/
/people
EOF;

$foo = simplexml_load_string( foo / );
$people = simplexml_load_string($xml);

var_dump((bool)$foo);
var_dump((bool)$people);
var_dump((int)$foo);
var_dump((int)$people);
var_dump((double)$foo);
var_dump((double)$people);
var_dump((string)$foo);
var_dump((string)$people);
var_dump((array)$foo);
var_dump((array)$people);
var_dump((object)$foo);
var_dump((object)$people);

?
===DONE===
--EXPECTF--
bool(false)
bool(true)
int(0)
int(0)
float(0)
float(0)
string(0) 
string(15) 
test
  
  
  

array(0) {
}
array(1) {
  [person]=
  array(3) {
[0]=
object(SimpleXMLElement)#%d (1) {
  [@attributes]=
  array(1) {
[name]=
string(3) Joe
  }
}
[1]=
object(SimpleXMLElement)#%d (2) {
  [@attributes]=
  array(1) {
[name]=
string(4) John
  }
  [children]=
  object(SimpleXMLElement)#%d (1) {
[person]=
object(SimpleXMLElement)#%d (1) {
  [@attributes]=
  array(1) {
[name]=
string(3) Joe
  }
}
  }
}
[2]=
object(SimpleXMLElement)#%d (1) {
  [@attributes]=
  array(1) {
[name]=
string(4) Jane
  }
}
  }
}
object(SimpleXMLElement)#%d (0) {
}
object(SimpleXMLElement)#%d (1) {
  [person]=
  array(3) {
[0]=
object(SimpleXMLElement)#%d (1) {
  [@attributes]=
  array(1) {
[name]=
string(3) Joe
  }
}
[1]=
object(SimpleXMLElement)#%d (2) {
  [@attributes]=
  array(1) {
[name]=
string(4) John
  }
  [children]=
  object(SimpleXMLElement)#%d (1) {
[person]=
object(SimpleXMLElement)#%d (1) {
  [@attributes]=
  array(1) {
[name]=
string(3) Joe
  }
}
  }
}
[2]=
object(SimpleXMLElement)#%d (1) {
  [@attributes]=
  array(1) {
[name]=
string(4) Jane
  }
}
  }
}
===DONE===

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



[PHP-CVS] cvs: php-src(PHP_5_1) /ext/simplexml/tests 032.phpt 033.phpt

2006-03-24 Thread Antony Dovgal
tony2001Fri Mar 24 12:08:53 2006 UTC

  Added files: (Branch: PHP_5_1)
/php-src/ext/simplexml/tests032.phpt 033.phpt 
  Log:
  add new tests
  
  

http://cvs.php.net/viewcvs.cgi/php-src/ext/simplexml/tests/032.phpt?view=markuprev=1.1
Index: php-src/ext/simplexml/tests/032.phpt
+++ php-src/ext/simplexml/tests/032.phpt
--TEST--
SimpleXML: comparing instances
--SKIPIF--
?php if (!extension_loaded(simplexml)) print skip; ?
--FILE--
?php 
$xml =EOF
people
  person name=Joe/
  person name=John
children
  person name=Joe/
/children
  /person
  person name=Jane/
/people
EOF;

$xml1 =EOF
people
  person name=John
children
  person name=Joe/
/children
  /person
  person name=Jane/
/people
EOF;


$people = simplexml_load_string($xml);
$people1 = simplexml_load_string($xml);
$people2 = simplexml_load_string($xml1);

var_dump($people1 == $people);
var_dump($people2 == $people);
var_dump($people2 == $people1);

?
===DONE===
--EXPECTF--
bool(true)
bool(false)
bool(false)
===DONE===

http://cvs.php.net/viewcvs.cgi/php-src/ext/simplexml/tests/033.phpt?view=markuprev=1.1
Index: php-src/ext/simplexml/tests/033.phpt
+++ php-src/ext/simplexml/tests/033.phpt
--TEST--
SimpleXML: casting instances
--SKIPIF--
?php if (!extension_loaded(simplexml)) print skip; ?
--FILE--
?php

$xml =EOF
people
test
  person name=Joe/
  person name=John
children
  person name=Joe/
/children
  /person
  person name=Jane/
/people
EOF;

$foo = simplexml_load_string( foo / );
$people = simplexml_load_string($xml);

var_dump((bool)$foo);
var_dump((bool)$people);
var_dump((int)$foo);
var_dump((int)$people);
var_dump((double)$foo);
var_dump((double)$people);
var_dump((string)$foo);
var_dump((string)$people);
var_dump((array)$foo);
var_dump((array)$people);
var_dump((object)$foo);
var_dump((object)$people);

?
===DONE===
--EXPECTF--
bool(false)
bool(true)
int(0)
int(0)
float(0)
float(0)
string(0) 
string(15) 
test
  
  
  

array(0) {
}
array(1) {
  [person]=
  array(3) {
[0]=
object(SimpleXMLElement)#%d (1) {
  [@attributes]=
  array(1) {
[name]=
string(3) Joe
  }
}
[1]=
object(SimpleXMLElement)#%d (2) {
  [@attributes]=
  array(1) {
[name]=
string(4) John
  }
  [children]=
  object(SimpleXMLElement)#%d (1) {
[person]=
object(SimpleXMLElement)#%d (1) {
  [@attributes]=
  array(1) {
[name]=
string(3) Joe
  }
}
  }
}
[2]=
object(SimpleXMLElement)#%d (1) {
  [@attributes]=
  array(1) {
[name]=
string(4) Jane
  }
}
  }
}
object(SimpleXMLElement)#%d (0) {
}
object(SimpleXMLElement)#%d (1) {
  [person]=
  array(3) {
[0]=
object(SimpleXMLElement)#%d (1) {
  [@attributes]=
  array(1) {
[name]=
string(3) Joe
  }
}
[1]=
object(SimpleXMLElement)#%d (2) {
  [@attributes]=
  array(1) {
[name]=
string(4) John
  }
  [children]=
  object(SimpleXMLElement)#%d (1) {
[person]=
object(SimpleXMLElement)#%d (1) {
  [@attributes]=
  array(1) {
[name]=
string(3) Joe
  }
}
  }
}
[2]=
object(SimpleXMLElement)#%d (1) {
  [@attributes]=
  array(1) {
[name]=
string(4) Jane
  }
}
  }
}
===DONE===

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



[PHP-CVS] cvs: php-src(PHP_5_1) / NEWS /ext/mysqli mysqli.c /ext/mysqli/tests bug36745.phpt

2006-03-24 Thread Georg Richter
georg   Fri Mar 24 12:10:39 2006 UTC

  Added files: (Branch: PHP_5_1)
/php-src/ext/mysqli/tests   bug36745.phpt 

  Modified files:  
/php-srcNEWS 
/php-src/ext/mysqli mysqli.c 
  Log:
  fix and testcase for bug #36745
  
  
http://cvs.php.net/viewcvs.cgi/php-src/NEWS?r1=1.2027.2.479r2=1.2027.2.480diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.479 php-src/NEWS:1.2027.2.480
--- php-src/NEWS:1.2027.2.479   Fri Mar 24 08:45:54 2006
+++ php-src/NEWSFri Mar 24 12:10:38 2006
@@ -19,6 +19,8 @@
 - Fixed bug #36808 (syslog ident becomes garbage between requests). (Tony)
 - Fixed bug #36802 (mysqli_set_charset() crash with a non-open connection).
   (Ilia)
+- Fixed bug #36745 (No error message when load data local file isn't found).
+  (Georg)
 - Fixed bug #36721 (The SoapServer is not able to send a header that it didn't
   receive). (Dmitry)
 - Fixed bug #36756 (DOMDocument::removeChild corrupts node). (Rob)
http://cvs.php.net/viewcvs.cgi/php-src/ext/mysqli/mysqli.c?r1=1.72.2.11r2=1.72.2.12diff_format=u
Index: php-src/ext/mysqli/mysqli.c
diff -u php-src/ext/mysqli/mysqli.c:1.72.2.11 
php-src/ext/mysqli/mysqli.c:1.72.2.12
--- php-src/ext/mysqli/mysqli.c:1.72.2.11   Fri Mar 24 09:32:24 2006
+++ php-src/ext/mysqli/mysqli.c Fri Mar 24 12:10:38 2006
@@ -15,7 +15,7 @@
   | Author: Georg Richter [EMAIL PROTECTED]|
   +--+
 
-  $Id: mysqli.c,v 1.72.2.11 2006/03/24 09:32:24 georg Exp $ 
+  $Id: mysqli.c,v 1.72.2.12 2006/03/24 12:10:38 georg Exp $ 
 */
 
 #ifdef HAVE_CONFIG_H
@@ -976,6 +976,7 @@
mysql-li_stream = php_stream_open_wrapper_ex((char *)filename, r, 0, 
NULL, context);
 
if (mysql-li_stream == NULL) {
+   sprintf((char *)data-error_msg, Can't find file '%-.64s'., 
filename);
return 1;
}
 

http://cvs.php.net/viewcvs.cgi/php-src/ext/mysqli/tests/bug36745.phpt?view=markuprev=1.1
Index: php-src/ext/mysqli/tests/bug36745.phpt
+++ php-src/ext/mysqli/tests/bug36745.phpt

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



[PHP-CVS] cvs: php-src /ext/standard streamsfuncs.c /main php_streams.h /main/streams streams.c

2006-03-24 Thread Sara Golemon
pollita Fri Mar 24 19:22:24 2006 UTC

  Modified files:  
/php-src/ext/standard   streamsfuncs.c 
/php-src/main   php_streams.h 
/php-src/main/streams   streams.c 
  Log:
  Add php_stream_get_record_unicde() API call.
  Update stream_get_line() userspace function to handle unicode streams.
  
  
http://cvs.php.net/viewcvs.cgi/php-src/ext/standard/streamsfuncs.c?r1=1.68r2=1.69diff_format=u
Index: php-src/ext/standard/streamsfuncs.c
diff -u php-src/ext/standard/streamsfuncs.c:1.68 
php-src/ext/standard/streamsfuncs.c:1.69
--- php-src/ext/standard/streamsfuncs.c:1.68Mon Mar 13 04:40:11 2006
+++ php-src/ext/standard/streamsfuncs.c Fri Mar 24 19:22:24 2006
@@ -17,7 +17,7 @@
   +--+
 */
 
-/* $Id: streamsfuncs.c,v 1.68 2006/03/13 04:40:11 pollita Exp $ */
+/* $Id: streamsfuncs.c,v 1.69 2006/03/24 19:22:24 pollita Exp $ */
 
 #include php.h
 #include php_globals.h
@@ -1235,18 +1235,15 @@
 
 /* {{{ proto string stream_get_line(resource stream, int maxlen [, string 
ending])
Read up to maxlen bytes from a stream or until the ending string is found */
-/* UTODO */
 PHP_FUNCTION(stream_get_line)
 {
-   char *str = NULL;
-   int str_len;
long max_length;
zval *zstream;
-   char *buf;
size_t buf_size;
php_stream *stream;
-   
-   if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, rl|s, zstream, 
max_length, str, str_len) == FAILURE) {
+   zval **delim = NULL;
+
+   if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, rl|Z, zstream, 
max_length, delim) == FAILURE) {
RETURN_FALSE;
}
 
@@ -1260,10 +1257,34 @@
 
php_stream_from_zval(stream, zstream);
 
-   if ((buf = php_stream_get_record(stream, max_length, buf_size, str, 
str_len TSRMLS_CC))) {
-   RETURN_STRINGL(buf, buf_size, 0);
+   if (php_stream_reads_unicode(stream)) {
+   UChar *buf;
+
+   if (Z_TYPE_PP(delim) != IS_UNICODE) {
+   convert_to_unicode_ex(delim);
+   }
+
+   /* maxchars == maxlength will prevent the otherwise generous 
maxlen == max_length * 2
+  from allocating beyond what's requested */
+   buf = php_stream_get_record_unicode(stream, max_length * 2, 
max_length, buf_size, Z_USTRVAL_PP(delim), Z_USTRLEN_PP(delim) TSRMLS_CC);
+   if (!buf) {
+   RETURN_FALSE;
+   }
+
+   RETURN_UNICODEL(buf, buf_size, 0);
} else {
-   RETURN_FALSE;
+   char *buf;
+
+   if (Z_TYPE_PP(delim) != IS_STRING) {
+   convert_to_string_ex(delim);
+   }
+
+   buf = php_stream_get_record(stream, max_length, buf_size, 
Z_STRVAL_PP(delim), Z_STRLEN_PP(delim) TSRMLS_CC);
+   if (!buf) {
+   RETURN_FALSE;
+   }
+
+   RETURN_STRINGL(buf, buf_size, 0);
}
 }
 
http://cvs.php.net/viewcvs.cgi/php-src/main/php_streams.h?r1=1.107r2=1.108diff_format=u
Index: php-src/main/php_streams.h
diff -u php-src/main/php_streams.h:1.107 php-src/main/php_streams.h:1.108
--- php-src/main/php_streams.h:1.107Tue Mar 14 21:15:05 2006
+++ php-src/main/php_streams.h  Fri Mar 24 19:22:24 2006
@@ -16,7 +16,7 @@
+--+
  */
 
-/* $Id: php_streams.h,v 1.107 2006/03/14 21:15:05 pollita Exp $ */
+/* $Id: php_streams.h,v 1.108 2006/03/24 19:22:24 pollita Exp $ */
 
 #ifndef PHP_STREAMS_H
 #define PHP_STREAMS_H
@@ -329,6 +329,8 @@

_php_stream_get_line((stream), 
(buf_type), ZSTR(buf), (maxlen), (maxchars), NULL TSRMLS_CC)
 
 PHPAPI char *php_stream_get_record(php_stream *stream, size_t maxlen, size_t 
*returned_len, char *delim, size_t delim_len TSRMLS_DC);
+PHPAPI UChar *php_stream_get_record_unicode(php_stream *stream, size_t maxlen, 
size_t maxchars, size_t *returned_len, UChar *delim, size_t delim_len 
TSRMLS_DC);
+
 
 PHPAPI UChar *_php_stream_u_get_line(php_stream *stream, UChar *buf, int32_t 
*pmax_bytes, int32_t *pmax_chars, int *pis_unicode TSRMLS_DC);
 #define php_stream_u_get_line(stream, buf, maxlen_buf, maxlen_chars, buf_type) 
_php_stream_u_get_line((stream), (buf), (maxlen_buf), (maxlen_chars), 
(buf_type) TSRMLS_CC)
http://cvs.php.net/viewcvs.cgi/php-src/main/streams/streams.c?r1=1.109r2=1.110diff_format=u
Index: php-src/main/streams/streams.c
diff -u php-src/main/streams/streams.c:1.109 
php-src/main/streams/streams.c:1.110
--- php-src/main/streams/streams.c:1.109Fri Mar 24 00:19:39 2006
+++ php-src/main/streams/streams.c  Fri Mar 24 19:22:24 2006
@@ -19,7 +19,7 @@
+--+
  */
 
-/* $Id: streams.c,v 

[PHP-CVS] cvs: php-src /ext/unicode unicode_iterators.c

2006-03-24 Thread Andrei Zmievski
andrei  Fri Mar 24 21:06:36 2006 UTC

  Modified files:  
/php-src/ext/unicodeunicode_iterators.c 
  Log:
  Use intern-type for break iterator.
  
  
http://cvs.php.net/viewcvs.cgi/php-src/ext/unicode/unicode_iterators.c?r1=1.23r2=1.24diff_format=u
Index: php-src/ext/unicode/unicode_iterators.c
diff -u php-src/ext/unicode/unicode_iterators.c:1.23 
php-src/ext/unicode/unicode_iterators.c:1.24
--- php-src/ext/unicode/unicode_iterators.c:1.23Sun Feb 26 11:57:14 2006
+++ php-src/ext/unicode/unicode_iterators.c Fri Mar 24 21:06:36 2006
@@ -14,7 +14,7 @@
+--+
 */
 
-/* $Id: unicode_iterators.c,v 1.23 2006/02/26 11:57:14 dmitry Exp $ */
+/* $Id: unicode_iterators.c,v 1.24 2006/03/24 21:06:36 andrei Exp $ */
 
 /*
  * TODO
@@ -538,9 +538,9 @@
intern-flags |= ITER_REVERSE;
}
 
-   if (ti_type = ITER_CHARACTER  ti_type  ITER_TYPE_LAST) {
+   if (intern-type = ITER_CHARACTER  intern-type  ITER_TYPE_LAST) {
UErrorCode status = U_ZERO_ERROR;
-   intern-u.brk.iter = ubrk_open(brk_type_map[ti_type - 
ITER_CHARACTER], UG(default_locale), text, text_len, status);
+   intern-u.brk.iter = ubrk_open(brk_type_map[intern-type - 
ITER_CHARACTER], UG(default_locale), text, text_len, status);
if (!U_SUCCESS(status)) {
php_error(E_RECOVERABLE_ERROR, Could not create 
UBreakIterator: %s, u_errorName(status));
return;

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



[PHP-CVS] cvs: php-src /main/streams filter.c

2006-03-24 Thread Andrei Zmievski
andrei  Fri Mar 24 21:25:44 2006 UTC

  Modified files:  
/php-src/main/streams   filter.c 
  Log:
  This is probably not a test..
  
  
http://cvs.php.net/viewcvs.cgi/php-src/main/streams/filter.c?r1=1.24r2=1.25diff_format=u
Index: php-src/main/streams/filter.c
diff -u php-src/main/streams/filter.c:1.24 php-src/main/streams/filter.c:1.25
--- php-src/main/streams/filter.c:1.24  Fri Mar 24 20:21:48 2006
+++ php-src/main/streams/filter.c   Fri Mar 24 21:25:44 2006
@@ -16,7 +16,7 @@
+--+
  */
 
-/* $Id: filter.c,v 1.24 2006/03/24 20:21:48 pollita Exp $ */
+/* $Id: filter.c,v 1.25 2006/03/24 21:25:44 andrei Exp $ */
 
 #include php.h
 #include php_globals.h
@@ -738,8 +738,8 @@
if (bucket-own_buf) {
pefree(bucket-buf.s, 
bucket-is_persistent);
}
-   bucket-buf_type == IS_UNICODE;
-   bucket-buf.u = (UChar*)\x00\x00;
+   bucket-buf_type = IS_UNICODE;
+   bucket-buf.u = EMPTY_STR;
bucket-own_buf = 0;
bucket-buflen = 0;
return SUCCESS;

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



[PHP-CVS] cvs: php-src /ext/standard file.c

2006-03-24 Thread Sara Golemon
pollita Fri Mar 24 21:32:39 2006 UTC

  Modified files:  
/php-src/ext/standard   file.c 
  Log:
  Update fgetss() for unicode
  
  
http://cvs.php.net/viewcvs.cgi/php-src/ext/standard/file.c?r1=1.428r2=1.429diff_format=u
Index: php-src/ext/standard/file.c
diff -u php-src/ext/standard/file.c:1.428 php-src/ext/standard/file.c:1.429
--- php-src/ext/standard/file.c:1.428   Fri Mar 17 22:52:55 2006
+++ php-src/ext/standard/file.c Fri Mar 24 21:32:39 2006
@@ -21,7 +21,7 @@
+--+
  */
 
-/* $Id: file.c,v 1.428 2006/03/17 22:52:55 andrei Exp $ */
+/* $Id: file.c,v 1.429 2006/03/24 21:32:39 pollita Exp $ */
 
 /* Synced with php 3.0 revision 1.218 1999-06-16 [ssb] */
 
@@ -1048,70 +1048,55 @@
 
 /* {{{ proto string fgetss(resource fp [, int length, string allowable_tags])
Get a line from file pointer and strip HTML tags */
-/* UTODO: Accept unicode contents */
 PHPAPI PHP_FUNCTION(fgetss)
 {
-   zval **fd, **bytes = NULL, **allow=NULL;
-   size_t len = 0;
-   size_t actual_len, retval_len;
-   char *buf = NULL, *retval;
-   php_stream *stream;
-   char *allowed_tags=NULL;
-   int allowed_tags_len=0;
-
-   switch(ZEND_NUM_ARGS()) {
-   case 1:
-   if (zend_get_parameters_ex(1, fd) == FAILURE) {
-   RETURN_FALSE;
-   }
-   break;
-
-   case 2:
-   if (zend_get_parameters_ex(2, fd, bytes) == FAILURE) {
-   RETURN_FALSE;
-   }
-   break;
-
-   case 3:
-   if (zend_get_parameters_ex(3, fd, bytes, allow) == 
FAILURE) {
-   RETURN_FALSE;
-   }
-   convert_to_string_ex(allow);
-   allowed_tags = Z_STRVAL_PP(allow);
-   allowed_tags_len = Z_STRLEN_PP(allow);
-   break;
+   zval *zstream;
+   php_stream *stream;
+   long length = 0;
+   zval **allow = NULL;
+   size_t retlen = 0;
 
-   default:
-   WRONG_PARAM_COUNT;
-   /* NOTREACHED */
-   break;
+   if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, r|lZ, zstream, 
length, allow) == FAILURE) {
+   return;
}
 
-   PHP_STREAM_TO_ZVAL(stream, fd);
+   php_stream_from_zval(stream, zstream);
+
+   if (php_stream_reads_unicode(stream)) {
+   UChar *buf = php_stream_get_line_ex(stream, IS_UNICODE, 
NULL_ZSTR, 0, length, retlen);
+   UChar *allowed = NULL;
+   int allowed_len = 0;
 
-   if (bytes != NULL) {
-   convert_to_long_ex(bytes);
-   if (Z_LVAL_PP(bytes) = 0) {
-   php_error_docref(NULL TSRMLS_CC, E_WARNING, Length 
parameter must be greater than 0);
+   if (!buf) {
RETURN_FALSE;
}
 
-   len = (size_t) Z_LVAL_PP(bytes);
-   buf = safe_emalloc(sizeof(char), (len + 1), 0);
-   /*needed because recv doesnt set null char at end*/
-   memset(buf, 0, len + 1);
-   }
+   if (allow) {
+   convert_to_unicode_ex(allow);
+   allowed = Z_USTRVAL_PP(allow);
+   allowed_len = Z_USTRLEN_PP(allow);
+   }
+   retlen = php_u_strip_tags(buf, retlen, stream-fgetss_state, 
allowed, allowed_len TSRMLS_CC);
 
-   if ((retval = php_stream_get_line(stream, buf, len, actual_len)) == 
NULL)  {
-   if (buf != NULL) {
-   efree(buf);
+   RETURN_UNICODEL(buf, retlen, 0);
+   } else {
+   char *buf = php_stream_get_line_ex(stream, IS_STRING, 
NULL_ZSTR, 0, length, retlen);
+   char *allowed = NULL;
+   int allowed_len = 0;
+
+   if (!buf) {
+   RETURN_FALSE;
}
-   RETURN_FALSE;
-   }
 
-   retval_len = php_strip_tags(retval, actual_len, stream-fgetss_state, 
allowed_tags, allowed_tags_len);
+   if (allow) {
+   convert_to_string_ex(allow);
+   allowed = Z_STRVAL_PP(allow);
+   allowed_len = Z_STRLEN_PP(allow);
+   }
+   retlen = php_strip_tags(buf, retlen, stream-fgetss_state, 
allowed, allowed_len);
 
-   RETURN_STRINGL(retval, retval_len, 0);
+   RETURN_STRINGL(buf, retlen, 0);
+   }
 }
 /* }}} */
 

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



[PHP-CVS] cvs: php-src /ext/standard streamsfuncs.c

2006-03-24 Thread Sara Golemon
pollita Fri Mar 24 21:37:42 2006 UTC

  Modified files:  
/php-src/ext/standard   streamsfuncs.c 
  Log:
  Fix stream_get_line():
  Checking type isn't nearly as important as checking nullness...
  
  
http://cvs.php.net/viewcvs.cgi/php-src/ext/standard/streamsfuncs.c?r1=1.69r2=1.70diff_format=u
Index: php-src/ext/standard/streamsfuncs.c
diff -u php-src/ext/standard/streamsfuncs.c:1.69 
php-src/ext/standard/streamsfuncs.c:1.70
--- php-src/ext/standard/streamsfuncs.c:1.69Fri Mar 24 19:22:24 2006
+++ php-src/ext/standard/streamsfuncs.c Fri Mar 24 21:37:42 2006
@@ -17,7 +17,7 @@
   +--+
 */
 
-/* $Id: streamsfuncs.c,v 1.69 2006/03/24 19:22:24 pollita Exp $ */
+/* $Id: streamsfuncs.c,v 1.70 2006/03/24 21:37:42 pollita Exp $ */
 
 #include php.h
 #include php_globals.h
@@ -1259,14 +1259,18 @@
 
if (php_stream_reads_unicode(stream)) {
UChar *buf;
+   UChar *d = NULL;
+   int dlen = 0;
 
-   if (Z_TYPE_PP(delim) != IS_UNICODE) {
+   if (delim) {
convert_to_unicode_ex(delim);
+   d = Z_USTRVAL_PP(delim);
+   dlen = Z_USTRLEN_PP(delim);
}
 
/* maxchars == maxlength will prevent the otherwise generous 
maxlen == max_length * 2
   from allocating beyond what's requested */
-   buf = php_stream_get_record_unicode(stream, max_length * 2, 
max_length, buf_size, Z_USTRVAL_PP(delim), Z_USTRLEN_PP(delim) TSRMLS_CC);
+   buf = php_stream_get_record_unicode(stream, max_length * 2, 
max_length, buf_size, d, dlen TSRMLS_CC);
if (!buf) {
RETURN_FALSE;
}
@@ -1274,12 +1278,16 @@
RETURN_UNICODEL(buf, buf_size, 0);
} else {
char *buf;
+   char *d = NULL;
+   int dlen = 0;
 
-   if (Z_TYPE_PP(delim) != IS_STRING) {
+   if (delim) {
convert_to_string_ex(delim);
+   d = Z_STRVAL_PP(delim);
+   dlen = Z_STRLEN_PP(delim);
}
 
-   buf = php_stream_get_record(stream, max_length, buf_size, 
Z_STRVAL_PP(delim), Z_STRLEN_PP(delim) TSRMLS_CC);
+   buf = php_stream_get_record(stream, max_length, buf_size, d, 
dlen TSRMLS_CC);
if (!buf) {
RETURN_FALSE;
}

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



[PHP-CVS] cvs: php-src /ext/standard streamsfuncs.c

2006-03-24 Thread Sara Golemon
pollita Fri Mar 24 22:27:13 2006 UTC

  Modified files:  
/php-src/ext/standard   streamsfuncs.c 
  Log:
  Allow bidirectional encoding option via single context param
  
http://cvs.php.net/viewcvs.cgi/php-src/ext/standard/streamsfuncs.c?r1=1.70r2=1.71diff_format=u
Index: php-src/ext/standard/streamsfuncs.c
diff -u php-src/ext/standard/streamsfuncs.c:1.70 
php-src/ext/standard/streamsfuncs.c:1.71
--- php-src/ext/standard/streamsfuncs.c:1.70Fri Mar 24 21:37:42 2006
+++ php-src/ext/standard/streamsfuncs.c Fri Mar 24 22:27:13 2006
@@ -17,7 +17,7 @@
   +--+
 */
 
-/* $Id: streamsfuncs.c,v 1.70 2006/03/24 21:37:42 pollita Exp $ */
+/* $Id: streamsfuncs.c,v 1.71 2006/03/24 22:27:13 pollita Exp $ */
 
 #include php.h
 #include php_globals.h
@@ -926,6 +926,20 @@
if (SUCCESS == zend_hash_find(Z_ARRVAL_P(params), options, 
sizeof(options), (void**)tmp)) {
parse_context_options(context, *tmp TSRMLS_CC);
}
+   if (SUCCESS == zend_hash_find(Z_ARRVAL_P(params), encoding, 
sizeof(encoding), (void**)tmp)) {
+   zval strval = **tmp;
+
+   if (context-input_encoding) {
+   efree(context-input_encoding);
+   }
+   if (context-output_encoding) {
+   efree(context-output_encoding);
+   }
+   zval_copy_ctor(strval);
+   convert_to_string(strval);
+   context-input_encoding = Z_STRVAL(strval);
+   context-output_encoding = estrdup(Z_STRVAL(strval));
+   }
if (SUCCESS == zend_hash_find(Z_ARRVAL_P(params), input_encoding, 
sizeof(input_encoding), (void**)tmp)) {
zval strval = **tmp;
 

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



[PHP-CVS] cvs: php-src /main/streams streams.c

2006-03-24 Thread Sara Golemon
pollita Sat Mar 25 04:37:44 2006 UTC

  Modified files:  
/php-src/main/streams   streams.c 
  Log:
  Handle converter instantiation errors properly
  
http://cvs.php.net/viewcvs.cgi/php-src/main/streams/streams.c?r1=1.111r2=1.112diff_format=u
Index: php-src/main/streams/streams.c
diff -u php-src/main/streams/streams.c:1.111 
php-src/main/streams/streams.c:1.112
--- php-src/main/streams/streams.c:1.111Fri Mar 24 20:21:48 2006
+++ php-src/main/streams/streams.c  Sat Mar 25 04:37:44 2006
@@ -19,7 +19,7 @@
+--+
  */
 
-/* $Id: streams.c,v 1.111 2006/03/24 20:21:48 pollita Exp $ */
+/* $Id: streams.c,v 1.112 2006/03/25 04:37:44 pollita Exp $ */
 
 #define _GNU_SOURCE
 #include php.h
@@ -2277,45 +2277,47 @@
UErrorCode status = U_ZERO_ERROR;
 
stream-output_encoding = ucnv_open(encoding, status);
-   switch (U_FAILURE(status)) {
-   case U_ZERO_ERROR:
-   /* UTODO: (Maybe?) Allow overriding the 
default error handlers on a per-stream basis via context params */
-   
zend_set_converter_error_mode(stream-output_encoding, UG(from_u_error_mode));
-   
zend_set_converter_subst_char(stream-output_encoding, UG(subst_char), 
UG(subst_char_len));
-   break;
-   case U_MEMORY_ALLOCATION_ERROR:
-   php_stream_wrapper_log_error(wrapper, 
options ^ REPORT_ERRORS TSRMLS_CC,
-   Unable to allocate memory for 
unicode output converter: %s, encoding);
-   break;
-   case U_FILE_ACCESS_ERROR:
-   php_stream_wrapper_log_error(wrapper, 
options ^ REPORT_ERRORS TSRMLS_CC,
-   Error loading unicode output 
converter: %s, encoding);
-   break;
-   default:
-   php_stream_wrapper_log_error(wrapper, 
options ^ REPORT_ERRORS TSRMLS_CC,
-   Unknown error starting unicode 
output converter: %s, encoding);
+   if (U_FAILURE(status)) {
+   switch (status) {
+   case U_MEMORY_ALLOCATION_ERROR:
+   
php_stream_wrapper_log_error(wrapper, options ^ REPORT_ERRORS TSRMLS_CC,
+   Unable to allocate 
memory for unicode output converter: %s, encoding);
+   break;
+   case U_FILE_ACCESS_ERROR:
+   
php_stream_wrapper_log_error(wrapper, options ^ REPORT_ERRORS TSRMLS_CC,
+   Error loading unicode 
output converter: %s, encoding);
+   break;
+   default:
+   
php_stream_wrapper_log_error(wrapper, options ^ REPORT_ERRORS TSRMLS_CC,
+   Unknown error starting 
unicode output converter: %s, encoding);
+   }
+   } else {
+   /* UTODO: (Maybe?) Allow overriding the default 
error handlers on a per-stream basis via context params */
+   
zend_set_converter_error_mode(stream-output_encoding, UG(from_u_error_mode));
+   
zend_set_converter_subst_char(stream-output_encoding, UG(subst_char), 
UG(subst_char_len));
}
}
if (strchr(implicit_mode, 'r') || strchr(implicit_mode, '+')) {
char *encoding = (context  context-input_encoding) ? 
context-input_encoding : utf8;
UErrorCode status = U_ZERO_ERROR;
+
stream-input_encoding = ucnv_open(encoding, status);
-   switch (U_FAILURE(status)) {
-   case U_ZERO_ERROR:
-   /* UTODO: If/When Input error handling 
gets implemented, set the options here */
-   break;
-   case U_MEMORY_ALLOCATION_ERROR:
-   php_stream_wrapper_log_error(wrapper, 
options ^ REPORT_ERRORS TSRMLS_CC,
-   Unable to allocate memory for 
unicode input converter: %s, encoding);
-