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

2008-10-25 Thread Felipe Pena
felipe  Sun Oct 26 02:02:05 2008 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_encoding.c 
  Log:
  - MFH: Fixed bug #46389 (NetWare needs small patch for _timezone) (patch by 
guenter at php.net)
  
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_encoding.c?r1=1.103.2.21.2.42r2=1.103.2.21.2.43diff_format=u
Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.42 
php-src/ext/soap/php_encoding.c:1.103.2.21.2.43
--- php-src/ext/soap/php_encoding.c:1.103.2.21.2.42 Thu Oct 16 15:49:18 2008
+++ php-src/ext/soap/php_encoding.c Sun Oct 26 02:02:05 2008
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: php_encoding.c,v 1.103.2.21.2.42 2008/10/16 15:49:18 dmitry Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.43 2008/10/26 02:02:05 felipe Exp $ */
 
 #include time.h
 
@@ -2876,7 +2876,7 @@
 #ifdef HAVE_TM_GMTOFF
snprintf(tzbuf, sizeof(tzbuf), %c%02d:%02d, (ta-tm_gmtoff  
0) ? '-' : '+', abs(ta-tm_gmtoff / 3600), abs( (ta-tm_gmtoff % 3600) / 60 ));
 #else
-# ifdef __CYGWIN__
+# if defined(__CYGWIN__) || defined(NETWARE)
snprintf(tzbuf, sizeof(tzbuf), %c%02d:%02d, ((ta-tm_isdst ? 
_timezone - 3600:_timezone)0)?'-':'+', abs((ta-tm_isdst ? _timezone - 3600 : 
_timezone) / 3600), abs(((ta-tm_isdst ? _timezone - 3600 : _timezone) % 3600) 
/ 60));
 # else
snprintf(tzbuf, sizeof(tzbuf), %c%02d:%02d, ((ta-tm_isdst ? 
timezone - 3600:timezone)0)?'-':'+', abs((ta-tm_isdst ? timezone - 3600 : 
timezone) / 3600), abs(((ta-tm_isdst ? timezone - 3600 : timezone) % 3600) / 
60));



-- 
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_2) /ext/soap php_encoding.c

2008-10-25 Thread Hannes Magnusson
On Sun, Oct 26, 2008 at 04:02, Felipe Pena [EMAIL PROTECTED] wrote:
 felipe  Sun Oct 26 02:02:05 2008 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_encoding.c
  Log:
  - MFH: Fixed bug #46389 (NetWare needs small patch for _timezone) (patch by 
 guenter at php.net)

NEWS entry?

-Hannes

-- 
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/soap php_encoding.c

2008-10-16 Thread Dmitry Stogov
dmitry  Thu Oct 16 15:49:18 2008 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_encoding.c 
  Log:
  ws
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_encoding.c?r1=1.103.2.21.2.41r2=1.103.2.21.2.42diff_format=u
Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.41 
php-src/ext/soap/php_encoding.c:1.103.2.21.2.42
--- php-src/ext/soap/php_encoding.c:1.103.2.21.2.41 Thu Oct 16 15:36:46 2008
+++ php-src/ext/soap/php_encoding.c Thu Oct 16 15:49:18 2008
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: php_encoding.c,v 1.103.2.21.2.41 2008/10/16 15:36:46 dmitry Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.42 2008/10/16 15:49:18 dmitry Exp $ */
 
 #include time.h
 
@@ -447,21 +447,21 @@
zend_binary_strncasecmp(ce-name, 
ce-name_length, Z_STRVAL_PP(tmp), ce-name_length, ce-name_length) == 0 

zend_hash_get_current_key_ex(SOAP_GLOBAL(class_map), type_name, type_len, 
idx, 0, pos) == HASH_KEY_IS_STRING) {
 
-   /* TODO: namespace isn't stored */
-   encodePtr enc = NULL;
-   if (SOAP_GLOBAL(sdl)) {
-   enc = get_encoder(SOAP_GLOBAL(sdl), 
SOAP_GLOBAL(sdl)-target_ns, type_name);
-   if (!enc) {
-   enc = 
find_encoder_by_type_name(SOAP_GLOBAL(sdl), type_name);
-   }
-   }
-   if (enc) {
-   if (encode != enc  style == 
SOAP_LITERAL) {
+   /* TODO: namespace isn't stored */
+   encodePtr enc = NULL;
+   if (SOAP_GLOBAL(sdl)) {
+   enc = 
get_encoder(SOAP_GLOBAL(sdl), SOAP_GLOBAL(sdl)-target_ns, type_name);
+   if (!enc) {
+   enc = 
find_encoder_by_type_name(SOAP_GLOBAL(sdl), type_name);
+   }
+   }
+   if (enc) {
+   if (encode != enc  style == 
SOAP_LITERAL) {
add_type = 1;   

-   }
-   encode = enc;
-   }
-   break;
+   }
+   encode = enc;
+   }
+   break;
}
}
}



-- 
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/soap php_encoding.c

2007-04-06 Thread Andrei Zmievski
andrei  Fri Apr  6 18:25:49 2007 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_encoding.c 
  Log:
  Typo?
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_encoding.c?r1=1.103.2.21.2.27r2=1.103.2.21.2.28diff_format=u
Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.27 
php-src/ext/soap/php_encoding.c:1.103.2.21.2.28
--- php-src/ext/soap/php_encoding.c:1.103.2.21.2.27 Mon Apr  2 13:43:08 2007
+++ php-src/ext/soap/php_encoding.c Fri Apr  6 18:25:49 2007
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: php_encoding.c,v 1.103.2.21.2.27 2007/04/02 13:43:08 dmitry Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.28 2007/04/06 18:25:49 andrei Exp $ */
 
 #include time.h
 
@@ -1016,7 +1016,7 @@
if (Z_TYPE_P(data) == IS_DOUBLE) {
char s[256];
 
-   snprintf(s, sizeof(s), %0.0F,floor(Z_DVAL_P(data)));
+   snprintf(s, sizeof(s), %0.0f,floor(Z_DVAL_P(data)));
xmlNodeSetContent(ret, BAD_CAST(s));
} else {
zval tmp = *data;

-- 
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/soap php_encoding.c

2007-04-06 Thread Andrei Zmievski
andrei  Fri Apr  6 18:27:58 2007 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_encoding.c 
  Log:
  Apologies. Didn't realize we were using custom snprintf().
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_encoding.c?r1=1.103.2.21.2.28r2=1.103.2.21.2.29diff_format=u
Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.28 
php-src/ext/soap/php_encoding.c:1.103.2.21.2.29
--- php-src/ext/soap/php_encoding.c:1.103.2.21.2.28 Fri Apr  6 18:25:49 2007
+++ php-src/ext/soap/php_encoding.c Fri Apr  6 18:27:58 2007
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: php_encoding.c,v 1.103.2.21.2.28 2007/04/06 18:25:49 andrei Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.29 2007/04/06 18:27:58 andrei Exp $ */
 
 #include time.h
 
@@ -1016,7 +1016,7 @@
if (Z_TYPE_P(data) == IS_DOUBLE) {
char s[256];
 
-   snprintf(s, sizeof(s), %0.0f,floor(Z_DVAL_P(data)));
+   snprintf(s, sizeof(s), %0.0F,floor(Z_DVAL_P(data)));
xmlNodeSetContent(ret, BAD_CAST(s));
} else {
zval tmp = *data;

-- 
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/soap php_encoding.c

2006-11-06 Thread Dmitry Stogov
dmitry  Mon Nov  6 13:22:50 2006 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_encoding.c 
  Log:
  MFH: Fixed decoding list of arrays (related to bug #39121)
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_encoding.c?r1=1.103.2.21.2.13r2=1.103.2.21.2.14diff_format=u
Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.13 
php-src/ext/soap/php_encoding.c:1.103.2.21.2.14
--- php-src/ext/soap/php_encoding.c:1.103.2.21.2.13 Tue Oct 24 05:20:50 2006
+++ php-src/ext/soap/php_encoding.c Mon Nov  6 13:22:49 2006
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: php_encoding.c,v 1.103.2.21.2.13 2006/10/24 05:20:50 dmitry Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.14 2006/11/06 13:22:49 dmitry Exp $ */
 
 #include time.h
 
@@ -1102,23 +1102,23 @@
}
add_string_to_string(val, val, val2);
zval_ptr_dtor(val2);
- node = node-next;
+   node = node-next;
}
}
if (any == NULL) {
any = val;
} else {
if (Z_TYPE_P(any) != IS_ARRAY) {
-   /* Convert into array */
-   zval *arr;
+   /* Convert into array */
+   zval *arr;
 
-   MAKE_STD_ZVAL(arr);
-   array_init(arr);
- add_next_index_zval(arr, any);
- any = arr;
- }
- /* Add array element */
- add_next_index_zval(any, val);
+   MAKE_STD_ZVAL(arr);
+   array_init(arr);
+   add_next_index_zval(arr, any);
+   any = arr;
+   }
+   /* Add array element */
+   add_next_index_zval(any, val);
}
}
node = node-next;
@@ -1378,22 +1378,31 @@
 
prop = get_zval_property(ret, (char*)trav-name 
TSRMLS_CC);
if (!prop) {
-  set_zval_property(ret, (char*)trav-name, tmpVal TSRMLS_CC);
+   if (!trav-next || 
!get_node(trav-next, (char*)trav-name)) {
+   set_zval_property(ret, 
(char*)trav-name, tmpVal TSRMLS_CC);
+   } else {
+   zval *arr;
+
+   MAKE_STD_ZVAL(arr);
+   array_init(arr);
+   add_next_index_zval(arr, 
tmpVal);
+   set_zval_property(ret, 
(char*)trav-name, arr TSRMLS_CC);
+   }
} else {
- /* Property already exist - make array */
- if (Z_TYPE_P(prop) != IS_ARRAY) {
-   /* Convert into array */
-   zval *arr;
-
-   MAKE_STD_ZVAL(arr);
-   array_init(arr);
-   prop-refcount++;
- add_next_index_zval(arr, prop);
- set_zval_property(ret, (char*)trav-name, arr TSRMLS_CC);
- prop = arr;
- }
- /* Add array element */
- add_next_index_zval(prop, tmpVal);
+   /* Property already exist - make array 
*/
+   if (Z_TYPE_P(prop) != IS_ARRAY) {
+   /* Convert into array */
+   zval *arr;
+
+   MAKE_STD_ZVAL(arr);
+   array_init(arr);
+   prop-refcount++;
+   add_next_index_zval(arr, prop);
+   set_zval_property(ret, 
(char*)trav-name, arr TSRMLS_CC);
+   

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

2006-10-23 Thread Dmitry Stogov
dmitry  Mon Oct 23 06:46:38 2006 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_encoding.c 
  Log:
  Fixed decoding of list of arrays in non-WSDL mode. (releated to bug #39121)
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_encoding.c?r1=1.103.2.21.2.11r2=1.103.2.21.2.12diff_format=u
Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.11 
php-src/ext/soap/php_encoding.c:1.103.2.21.2.12
--- php-src/ext/soap/php_encoding.c:1.103.2.21.2.11 Tue Oct  3 07:00:35 2006
+++ php-src/ext/soap/php_encoding.c Mon Oct 23 06:46:38 2006
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: php_encoding.c,v 1.103.2.21.2.11 2006/10/03 07:00:35 dmitry Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.12 2006/10/23 06:46:38 dmitry Exp $ */
 
 #include time.h
 
@@ -1102,23 +1102,23 @@
}
add_string_to_string(val, val, val2);
zval_ptr_dtor(val2);
- node = node-next;
+   node = node-next;
}
}
if (any == NULL) {
any = val;
} else {
if (Z_TYPE_P(any) != IS_ARRAY) {
-   /* Convert into array */
-   zval *arr;
+   /* Convert into array */
+   zval *arr;
 
-   MAKE_STD_ZVAL(arr);
-   array_init(arr);
- add_next_index_zval(arr, any);
- any = arr;
- }
- /* Add array element */
- add_next_index_zval(any, val);
+   MAKE_STD_ZVAL(arr);
+   array_init(arr);
+   add_next_index_zval(arr, any);
+   any = arr;
+   }
+   /* Add array element */
+   add_next_index_zval(any, val);
}
}
node = node-next;
@@ -1378,22 +1378,31 @@
 
prop = get_zval_property(ret, (char*)trav-name 
TSRMLS_CC);
if (!prop) {
-  set_zval_property(ret, (char*)trav-name, tmpVal TSRMLS_CC);
+   if (!trav-next || 
!get_node(trav-next, (char*)trav-name)) {
+   set_zval_property(ret, 
(char*)trav-name, tmpVal TSRMLS_CC);
+   } else {
+   zval *arr;
+
+   MAKE_STD_ZVAL(arr);
+   array_init(arr);
+   add_next_index_zval(arr, 
tmpVal);
+   set_zval_property(ret, 
(char*)trav-name, arr TSRMLS_CC);
+   }
} else {
- /* Property already exist - make array */
- if (Z_TYPE_P(prop) != IS_ARRAY) {
-   /* Convert into array */
-   zval *arr;
-
-   MAKE_STD_ZVAL(arr);
-   array_init(arr);
-   prop-refcount++;
- add_next_index_zval(arr, prop);
- set_zval_property(ret, (char*)trav-name, arr TSRMLS_CC);
- prop = arr;
- }
- /* Add array element */
- add_next_index_zval(prop, tmpVal);
+   /* Property already exist - make array 
*/
+   if (Z_TYPE_P(prop) != IS_ARRAY) {
+   /* Convert into array */
+   zval *arr;
+
+   MAKE_STD_ZVAL(arr);
+   array_init(arr);
+   prop-refcount++;
+   add_next_index_zval(arr, prop);
+   set_zval_property(ret, 
(char*)trav-name, arr TSRMLS_CC);
+  

Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/soap php_encoding.c

2006-10-23 Thread Ilia Alshanetsky

Dmitry,

This is not a critical fix, please revert it and hold off until 5.2.0  
release before applying it to the 5.2 branch.


Thanks


On 23-Oct-06, at 2:46 AM, Dmitry Stogov wrote:


dmitry  Mon Oct 23 06:46:38 2006 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_encoding.c
  Log:
  Fixed decoding of list of arrays in non-WSDL mode. (releated to  
bug #39121)



http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_encoding.c? 
r1=1.103.2.21.2.11r2=1.103.2.21.2.12diff_format=u

Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.11 php-src/ext/ 
soap/php_encoding.c:1.103.2.21.2.12
--- php-src/ext/soap/php_encoding.c:1.103.2.21.2.11	Tue Oct  3  
07:00:35 2006

+++ php-src/ext/soap/php_encoding.c Mon Oct 23 06:46:38 2006
@@ -17,7 +17,7 @@
   |  Dmitry Stogov  
[EMAIL PROTECTED] |

+- 
-+

 */
-/* $Id: php_encoding.c,v 1.103.2.21.2.11 2006/10/03 07:00:35  
dmitry Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.12 2006/10/23 06:46:38  
dmitry Exp $ */


 #include time.h

@@ -1102,23 +1102,23 @@
}
add_string_to_string(val, val, val2);
zval_ptr_dtor(val2);
- node = node-next;
+   node = node-next;
}
}
if (any == NULL) {
any = val;
} else {
if (Z_TYPE_P(any) != IS_ARRAY) {
-   /* Convert into array */
-   zval *arr;
+   /* Convert into array */
+   zval *arr;

-   MAKE_STD_ZVAL(arr);
-   array_init(arr);
- add_next_index_zval(arr, any);
- any = arr;
- }
- /* Add array element */
- add_next_index_zval(any, val);
+   MAKE_STD_ZVAL(arr);
+   array_init(arr);
+   add_next_index_zval(arr, any);
+   any = arr;
+   }
+   /* Add array element */
+   add_next_index_zval(any, val);
}
}
node = node-next;
@@ -1378,22 +1378,31 @@

prop = get_zval_property(ret, (char*)trav-name 
TSRMLS_CC);
if (!prop) {
-  set_zval_property(ret, (char*)trav-name, tmpVal  
TSRMLS_CC);

+   if (!trav-next || !get_node(trav-next, 
(char*)trav-name)) {
+   set_zval_property(ret, 
(char*)trav-name, tmpVal TSRMLS_CC);
+   } else {
+   zval *arr;
+
+   MAKE_STD_ZVAL(arr);
+   array_init(arr);
+   add_next_index_zval(arr, 
tmpVal);
+   set_zval_property(ret, 
(char*)trav-name, arr TSRMLS_CC);
+   }
} else {
- /* Property already exist - make array */
- if (Z_TYPE_P(prop) != IS_ARRAY) {
-   /* Convert into array */
-   zval *arr;
-
-   MAKE_STD_ZVAL(arr);
-   array_init(arr);
-   prop-refcount++;
- add_next_index_zval(arr, prop);
- set_zval_property(ret, (char*)trav-name, arr TSRMLS_CC);
- prop = arr;
- }
- /* Add array element */
- add_next_index_zval(prop, tmpVal);
+   /* Property already exist - make array 
*/
+   if (Z_TYPE_P(prop) != IS_ARRAY) {
+   /* Convert into array */
+   zval *arr;
+
+   MAKE_STD_ZVAL(arr);
+   array_init(arr);
+   prop-refcount++;
+

RE: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/soap php_encoding.c

2006-10-23 Thread Dmitry Stogov
I'll do it tomorrow morning.

Dmitry.

 -Original Message-
 From: Ilia Alshanetsky [mailto:[EMAIL PROTECTED] On Behalf Of 
 Ilia Alshanetsky
 Sent: Monday, October 23, 2006 7:14 PM
 To: Dmitry Stogov
 Cc: php-cvs@lists.php.net
 Subject: Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/soap php_encoding.c 
 
 
 Dmitry,
 
 This is not a critical fix, please revert it and hold off 
 until 5.2.0  
 release before applying it to the 5.2 branch.
 
 Thanks
 
 
 On 23-Oct-06, at 2:46 AM, Dmitry Stogov wrote:
 
  dmitry  Mon Oct 23 06:46:38 2006 UTC
 
Modified files:  (Branch: PHP_5_2)
  /php-src/ext/soap   php_encoding.c
Log:
Fixed decoding of list of arrays in non-WSDL mode. (releated to
  bug #39121)
 
 
  http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_encoding.c? 
  r1=1.103.2.21.2.11r2=1.103.2.21.2.12diff_format=u
  Index: php-src/ext/soap/php_encoding.c
  diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.11 
 php-src/ext/ 
  soap/php_encoding.c:1.103.2.21.2.12
  --- php-src/ext/soap/php_encoding.c:1.103.2.21.2.11 Tue Oct  3  
  07:00:35 2006
  +++ php-src/ext/soap/php_encoding.c Mon Oct 23 06:46:38 2006
  @@ -17,7 +17,7 @@
 |  Dmitry Stogov  
  [EMAIL PROTECTED] |
  
  
 +-
  
  -+
   */
  -/* $Id: php_encoding.c,v 1.103.2.21.2.11 2006/10/03 07:00:35  
  dmitry Exp $ */
  +/* $Id: php_encoding.c,v 1.103.2.21.2.12 2006/10/23 06:46:38  
  dmitry Exp $ */
 
   #include time.h
 
  @@ -1102,23 +1102,23 @@
  }
  
 add_string_to_string(val, val, val2);
  zval_ptr_dtor(val2);
  - node = node-next;
  +   node = node-next;
  }
  }
  if (any == NULL) {
  any = val;
  } else {
  if (Z_TYPE_P(any) != IS_ARRAY) {
  -   /* Convert into array */
  -   zval *arr;
  +   /* Convert into array */
  +   zval *arr;
 
  -   MAKE_STD_ZVAL(arr);
  -   array_init(arr);
  - add_next_index_zval(arr, any);
  - any = arr;
  - }
  - /* Add array element */
  - add_next_index_zval(any, val);
  +   MAKE_STD_ZVAL(arr);
  +   array_init(arr);
  +   add_next_index_zval(arr, any);
  +   any = arr;
  +   }
  +   /* Add array element */
  +   add_next_index_zval(any, val);
  }
  }
  node = node-next;
  @@ -1378,22 +1378,31 @@
 
  prop = get_zval_property(ret, 
 (char*)trav-name TSRMLS_CC);
  if (!prop) {
  -  set_zval_property(ret, (char*)trav-name, tmpVal  
  TSRMLS_CC);
  +   if (!trav-next || 
 !get_node(trav-next, (char*)trav-name)) {
  +   
 set_zval_property(ret, (char*)trav-name, tmpVal TSRMLS_CC);
  +   } else {
  +   zval *arr;
  +
  +   MAKE_STD_ZVAL(arr);
  +   array_init(arr);
  +   
 add_next_index_zval(arr, tmpVal);
  +   
 set_zval_property(ret, (char*)trav-name, arr TSRMLS_CC);
  +   }
  } else {
  - /* Property already exist - 
 make array */
  - if (Z_TYPE_P(prop) != IS_ARRAY) {
  -   /* Convert into array */
  -   zval *arr;
  -
  -   MAKE_STD_ZVAL(arr);
  -   array_init(arr);
  -   prop-refcount++;
  - 
 add_next_index_zval(arr, prop);
  - set_zval_property(ret, (char*)trav-name, arr 
 TSRMLS_CC);
  - prop = arr;
  - }
  - /* Add array element */
  - add_next_index_zval(prop, tmpVal);
  +   /* Property already 
 exist - make array */
  +   if (Z_TYPE_P(prop) != 
 IS_ARRAY

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

2006-10-23 Thread Dmitry Stogov
dmitry  Tue Oct 24 05:20:50 2006 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_encoding.c 
  Log:
  Revert patch because we are at last RC stage.
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_encoding.c?r1=1.103.2.21.2.12r2=1.103.2.21.2.13diff_format=u
Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.12 
php-src/ext/soap/php_encoding.c:1.103.2.21.2.13
--- php-src/ext/soap/php_encoding.c:1.103.2.21.2.12 Mon Oct 23 06:46:38 2006
+++ php-src/ext/soap/php_encoding.c Tue Oct 24 05:20:50 2006
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: php_encoding.c,v 1.103.2.21.2.12 2006/10/23 06:46:38 dmitry Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.13 2006/10/24 05:20:50 dmitry Exp $ */
 
 #include time.h
 
@@ -1102,23 +1102,23 @@
}
add_string_to_string(val, val, val2);
zval_ptr_dtor(val2);
-   node = node-next;
+ node = node-next;
}
}
if (any == NULL) {
any = val;
} else {
if (Z_TYPE_P(any) != IS_ARRAY) {
-   /* Convert into array */
-   zval *arr;
+   /* Convert into array */
+   zval *arr;
 
-   MAKE_STD_ZVAL(arr);
-   array_init(arr);
-   add_next_index_zval(arr, any);
-   any = arr;
-   }
-   /* Add array element */
-   add_next_index_zval(any, val);
+   MAKE_STD_ZVAL(arr);
+   array_init(arr);
+ add_next_index_zval(arr, any);
+ any = arr;
+ }
+ /* Add array element */
+ add_next_index_zval(any, val);
}
}
node = node-next;
@@ -1378,31 +1378,22 @@
 
prop = get_zval_property(ret, (char*)trav-name 
TSRMLS_CC);
if (!prop) {
-   if (!trav-next || 
!get_node(trav-next, (char*)trav-name)) {
-   set_zval_property(ret, 
(char*)trav-name, tmpVal TSRMLS_CC);
-   } else {
-   zval *arr;
-
-   MAKE_STD_ZVAL(arr);
-   array_init(arr);
-   add_next_index_zval(arr, 
tmpVal);
-   set_zval_property(ret, 
(char*)trav-name, arr TSRMLS_CC);
-   }
+  set_zval_property(ret, (char*)trav-name, tmpVal TSRMLS_CC);
} else {
-   /* Property already exist - make array 
*/
-   if (Z_TYPE_P(prop) != IS_ARRAY) {
-   /* Convert into array */
-   zval *arr;
-
-   MAKE_STD_ZVAL(arr);
-   array_init(arr);
-   prop-refcount++;
-   add_next_index_zval(arr, prop);
-   set_zval_property(ret, 
(char*)trav-name, arr TSRMLS_CC);
-   prop = arr;
-   }
-   /* Add array element */
-   add_next_index_zval(prop, tmpVal);
+ /* Property already exist - make array */
+ if (Z_TYPE_P(prop) != IS_ARRAY) {
+   /* Convert into array */
+   zval *arr;
+
+   MAKE_STD_ZVAL(arr);
+   array_init(arr);
+   prop-refcount++;
+ add_next_index_zval(arr, prop);
+ set_zval_property(ret, (char*)trav-name, arr TSRMLS_CC);
+

[PHP-CVS] cvs: php-src(PHP_5_2) /ext/soap php_encoding.c /ext/soap/tests typemap013.phpt

2006-10-03 Thread Dmitry Stogov
dmitry  Tue Oct  3 07:00:35 2006 UTC

  Added files: (Branch: PHP_5_2)
/php-src/ext/soap/tests typemap013.phpt 

  Modified files:  
/php-src/ext/soap   php_encoding.c 
  Log:
  Fixed possible crash with default namespaces
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_encoding.c?r1=1.103.2.21.2.10r2=1.103.2.21.2.11diff_format=u
Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.10 
php-src/ext/soap/php_encoding.c:1.103.2.21.2.11
--- php-src/ext/soap/php_encoding.c:1.103.2.21.2.10 Wed Sep 20 13:42:50 2006
+++ php-src/ext/soap/php_encoding.c Tue Oct  3 07:00:35 2006
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: php_encoding.c,v 1.103.2.21.2.10 2006/09/20 13:42:50 dmitry Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.11 2006/10/03 07:00:35 dmitry Exp $ */
 
 #include time.h
 
@@ -3035,6 +3035,43 @@
smart_str_free(nstype);
 }
 
+static xmlNsPtr xmlSearchNsPrefixByHref(xmlDocPtr doc, xmlNodePtr node, const 
xmlChar * href)
+{
+   xmlNsPtr cur;
+   xmlNodePtr orig = node;
+
+   while (node) {
+   if (node-type == XML_ENTITY_REF_NODE ||
+   node-type == XML_ENTITY_NODE ||
+   node-type == XML_ENTITY_DECL) {
+   return NULL;
+   }
+   if (node-type == XML_ELEMENT_NODE) {
+   cur = node-nsDef;
+   while (cur != NULL) {
+   if (cur-prefix  cur-href  
xmlStrEqual(cur-href, href)) {
+   if (xmlSearchNs(doc, node, cur-prefix) 
== cur) {
+   return cur;
+   }
+   }
+   cur = cur-next;
+   }
+   if (orig != node) {
+   cur = node-ns;
+   if (cur != NULL) {
+   if (cur-prefix  cur-href  
xmlStrEqual(cur-href, href)) {
+   if (xmlSearchNs(doc, node, 
cur-prefix) == cur) {
+   return cur;
+   }
+   }
+   }
+   }
+   }
+   node = node-parent;
+   }
+   return NULL;
+}
+
 xmlNsPtr encode_add_ns(xmlNodePtr node, const char* ns)
 {
xmlNsPtr xmlns;
@@ -3044,6 +3081,9 @@
}
 
xmlns = xmlSearchNsByHref(node-doc, node, BAD_CAST(ns));
+   if (xmlns != NULL  xmlns-prefix == NULL) {
+   xmlns = xmlSearchNsPrefixByHref(node-doc, node, BAD_CAST(ns));
+   }
if (xmlns == NULL) {
xmlChar* prefix;
TSRMLS_FETCH();
@@ -3054,9 +3094,19 @@
smart_str prefix = {0};
int num = ++SOAP_GLOBAL(cur_uniq_ns);
 
-   smart_str_appendl(prefix, ns, 2);
-   smart_str_append_long(prefix, num);
-   smart_str_0(prefix);
+   while (1) {
+   smart_str_appendl(prefix, ns, 2);
+   smart_str_append_long(prefix, num);
+   smart_str_0(prefix);
+   if (xmlSearchNs(node-doc, node, 
BAD_CAST(prefix.c)) == NULL) {
+   break;
+   }
+   smart_str_free(prefix);
+   prefix.c = NULL;
+   prefix.len = 0;
+   num = ++SOAP_GLOBAL(cur_uniq_ns);
+   }
+
xmlns = xmlNewNs(node-doc-children, BAD_CAST(ns), 
BAD_CAST(prefix.c));
smart_str_free(prefix);
}

http://cvs.php.net/viewvc.cgi/php-src/ext/soap/tests/typemap013.phpt?view=markuprev=1.1
Index: php-src/ext/soap/tests/typemap013.phpt
+++ php-src/ext/soap/tests/typemap013.phpt

-- 
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/soap php_encoding.c soap.c

2006-07-12 Thread Dmitry Stogov
dmitry  Tue Jul 11 14:35:50 2006 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_encoding.c soap.c 
  Log:
  Nuke signed/unsigned compiler warnings
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_encoding.c?r1=1.103.2.21.2.6r2=1.103.2.21.2.7diff_format=u
Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.6 
php-src/ext/soap/php_encoding.c:1.103.2.21.2.7
--- php-src/ext/soap/php_encoding.c:1.103.2.21.2.6  Tue Jul 11 14:24:18 2006
+++ php-src/ext/soap/php_encoding.c Tue Jul 11 14:35:50 2006
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: php_encoding.c,v 1.103.2.21.2.6 2006/07/11 14:24:18 dmitry Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.7 2006/07/11 14:35:50 dmitry Exp $ */
 
 #include time.h
 
@@ -1755,7 +1755,8 @@
zval **zprop;
char *str_key;
ulong index;
-   int key_type, str_key_len;
+   int key_type;
+   unsigned int str_key_len;
 
key_type = zend_hash_get_current_key_ex(prop, 
str_key, str_key_len, index, FALSE, NULL);
zend_hash_get_current_data(prop, (void 
**)zprop);
@@ -2402,7 +2403,7 @@
xmlNodePtr key;
zval **temp_data;
char *key_val;
-   int int_val;
+   ulong int_val;
 
zend_hash_get_current_data(data-value.ht, (void 
**)temp_data);
if (Z_TYPE_PP(temp_data) != IS_NULL) {
@@ -2410,7 +2411,7 @@
xmlAddChild(xmlParam, item);
key = xmlNewNode(NULL, BAD_CAST(key));
xmlAddChild(item,key);
-   if (zend_hash_get_current_key(data-value.ht, 
key_val, (long *)int_val, FALSE) == HASH_KEY_IS_STRING) {
+   if (zend_hash_get_current_key(data-value.ht, 
key_val, int_val, FALSE) == HASH_KEY_IS_STRING) {
if (style == SOAP_ENCODED) {
set_xsi_type(key, xsd:string);
}
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/soap.c?r1=1.156.2.28.2.5r2=1.156.2.28.2.6diff_format=u
Index: php-src/ext/soap/soap.c
diff -u php-src/ext/soap/soap.c:1.156.2.28.2.5 
php-src/ext/soap/soap.c:1.156.2.28.2.6
--- php-src/ext/soap/soap.c:1.156.2.28.2.5  Tue Jul 11 14:24:18 2006
+++ php-src/ext/soap/soap.c Tue Jul 11 14:35:50 2006
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: soap.c,v 1.156.2.28.2.5 2006/07/11 14:24:18 dmitry Exp $ */
+/* $Id: soap.c,v 1.156.2.28.2.6 2006/07/11 14:35:50 dmitry Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -3539,8 +3539,8 @@
zend_hash_internal_pointer_reset_ex(Z_ARRVAL_P(ret), pos);
while (zend_hash_get_current_data_ex(Z_ARRVAL_P(ret), (void 
**)data, pos) != FAILURE) {
char *param_name = NULL;
-   int   param_name_len;
-   long  param_index = i;
+   unsigned int param_name_len;
+   ulong param_index = i;
 
zend_hash_get_current_key_ex(Z_ARRVAL_P(ret), 
param_name, param_name_len, param_index, 0, pos);
parameter = get_param(function, param_name, 
param_index, 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/soap php_encoding.c

2006-06-15 Thread Rasmus Lerdorf
rasmus  Thu Jun 15 20:49:05 2006 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_encoding.c 
  Log:
  MFH:
  I don't think the call to xmlNodeSetContentLen() is needed here and
  it is causing performance problems because it tries to parse the blob
  and create a subtree.  Because we are escaping the string anyway, we
  are never going to get a subtree, but the entity parsing that is done
  by xmlNodeSetContentLen() is killing performance on large blobs of
  text.  On one recent example it took a couple of minutes to parse
  whereas if we just create a text node like this and set the contents
  to the raw string it is down to milliseconds.
  
  
http://cvs.php.net/viewcvs.cgi/php-src/ext/soap/php_encoding.c?r1=1.103.2.21.2.1r2=1.103.2.21.2.2diff_format=u
Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.1 
php-src/ext/soap/php_encoding.c:1.103.2.21.2.2
--- php-src/ext/soap/php_encoding.c:1.103.2.21.2.1  Fri May 26 09:02:33 2006
+++ php-src/ext/soap/php_encoding.c Thu Jun 15 20:49:05 2006
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: php_encoding.c,v 1.103.2.21.2.1 2006/05/26 09:02:33 dmitry Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.2 2006/06/15 20:49:05 rasmus Exp $ */
 
 #include time.h
 
@@ -727,7 +727,7 @@
 
 static xmlNodePtr to_xml_string(encodeTypePtr type, zval *data, int style, 
xmlNodePtr parent)
 {
-   xmlNodePtr ret;
+   xmlNodePtr ret, text;
char *str;
int new_len;
TSRMLS_FETCH();
@@ -737,13 +737,15 @@
FIND_ZVAL_NULL(data, ret, style);
 
if (Z_TYPE_P(data) == IS_STRING) {
-   str = php_escape_html_entities(Z_STRVAL_P(data), 
Z_STRLEN_P(data), new_len, 0, 0, NULL TSRMLS_CC);
+   str = estrndup(Z_STRVAL_P(data), Z_STRLEN_P(data));
+   new_len = Z_STRLEN_P(data);
} else {
zval tmp = *data;
 
zval_copy_ctor(tmp);
convert_to_string(tmp);
-   str = php_escape_html_entities(Z_STRVAL(tmp), Z_STRLEN(tmp), 
new_len, 0, 0, NULL TSRMLS_CC);
+   str = estrndup(Z_STRVAL(tmp), Z_STRLEN(tmp));
+   new_len = Z_STRLEN(tmp);
zval_dtor(tmp);
}
 
@@ -765,7 +767,8 @@
soap_error1(E_ERROR,  Encoding: string '%s' is not a valid 
utf-8 string, str);
}
 
-   xmlNodeSetContentLen(ret, str, new_len);
+   text = xmlNewTextLen(str, new_len);
+   xmlAddChild(ret, text);
efree(str);
 
if (style == SOAP_ENCODED) {

-- 
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/soap php_encoding.c

2006-06-15 Thread Rasmus Lerdorf
rasmus  Thu Jun 15 22:45:30 2006 UTC

  Modified files:  (Branch: PHP_5_2)
/php-src/ext/soap   php_encoding.c 
  Log:
  MFH: Optimize the other string conversion functions here to just create
  raw text nodes.
  
  
http://cvs.php.net/viewcvs.cgi/php-src/ext/soap/php_encoding.c?r1=1.103.2.21.2.2r2=1.103.2.21.2.3diff_format=u
Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.21.2.2 
php-src/ext/soap/php_encoding.c:1.103.2.21.2.3
--- php-src/ext/soap/php_encoding.c:1.103.2.21.2.2  Thu Jun 15 20:49:05 2006
+++ php-src/ext/soap/php_encoding.c Thu Jun 15 22:45:30 2006
@@ -17,7 +17,7 @@
   |  Dmitry Stogov [EMAIL PROTECTED] |
   +--+
 */
-/* $Id: php_encoding.c,v 1.103.2.21.2.2 2006/06/15 20:49:05 rasmus Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.21.2.3 2006/06/15 22:45:30 rasmus Exp $ */
 
 #include time.h
 
@@ -779,7 +779,7 @@
 
 static xmlNodePtr to_xml_base64(encodeTypePtr type, zval *data, int style, 
xmlNodePtr parent)
 {
-   xmlNodePtr ret;
+   xmlNodePtr ret, text;
unsigned char *str;
int str_len;
 
@@ -789,7 +789,8 @@
 
if (Z_TYPE_P(data) == IS_STRING) {
str = php_base64_encode((unsigned char*)Z_STRVAL_P(data), 
Z_STRLEN_P(data), str_len);
-   xmlNodeSetContentLen(ret, str, str_len);
+   text = xmlNewTextLen(str, str_len);
+   xmlAddChild(ret, text);
efree(str);
} else {
zval tmp = *data;
@@ -797,7 +798,8 @@
zval_copy_ctor(tmp);
convert_to_string(tmp);
str = php_base64_encode((unsigned char*)Z_STRVAL(tmp), 
Z_STRLEN(tmp), str_len);
-   xmlNodeSetContentLen(ret, str, str_len);
+   text = xmlNewTextLen(str, str_len);
+   xmlAddChild(ret, text);
efree(str);
zval_dtor(tmp);
}
@@ -811,7 +813,7 @@
 static xmlNodePtr to_xml_hexbin(encodeTypePtr type, zval *data, int style, 
xmlNodePtr parent)
 {
static char hexconvtab[] = 0123456789ABCDEF;
-   xmlNodePtr ret;
+   xmlNodePtr ret, text;
unsigned char *str;
zval tmp;
int i, j;
@@ -834,7 +836,8 @@
}
str[j] = '\0';
 
-   xmlNodeSetContentLen(ret, str, Z_STRLEN_P(data) * 2 * sizeof(char));
+   text = xmlNewTextLen(str, Z_STRLEN_P(data) * 2 * sizeof(char));
+   xmlAddChild(ret, text);
efree(str);
if (data == tmp) {
zval_dtor(tmp);

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