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

2003-10-17 Thread changelog
changelog   Fri Oct 17 20:32:33 2003 EDT

  Modified files:  
/ZendEngine2ChangeLog 
  Log:
  ChangeLog update
  
Index: ZendEngine2/ChangeLog
diff -u ZendEngine2/ChangeLog:1.317 ZendEngine2/ChangeLog:1.318
--- ZendEngine2/ChangeLog:1.317 Wed Oct 15 20:34:03 2003
+++ ZendEngine2/ChangeLog   Fri Oct 17 20:32:33 2003
@@ -1,3 +1,31 @@
+2003-10-17  Marcus Boerger  [EMAIL PROTECTED]
+
+* ZendTS.dsp:
+  WS
+
+* zend_reflection_api.c:
+  Show if a class/object is iterateable
+
+* ZendTS.dsp
+  zend.h
+  zend_API.h
+  zend_default_classes.c
+  zend_execute.c
+  zend_iterators.c
+  zend_iterators.h:
+  Added c-api for iterators
+
+* zend_reflection_api.c:
+  Fix showing final/abstract for classes
+
+2003-10-17  Ilia Alshanetsky  [EMAIL PROTECTED]
+
+* zend_ini_parser.y:
+  Fixed formatting issue.
+
+* zend_alloc.c:
+  Fixed if() condition.
+
 2003-10-15  Marcus Boerger  [EMAIL PROTECTED]
 
 * zend_API.c
@@ -1768,7 +1796,7 @@
 2003-06-10  Jani Taskinen  [EMAIL PROTECTED]
 
 * zend_multiply.h:
-  - Missing $Id: ChangeLog,v 1.317 2003/10/16 00:34:03 changelog Exp $ tag
+  - Missing $Id: ChangeLog,v 1.318 2003/10/18 00:32:33 changelog Exp $ tag
 
 2003-06-10  James Cox  [EMAIL PROTECTED]
 
@@ -3492,7 +3520,7 @@
   zend_types.h
   zend_variables.c
   zend_variables.h:
-  - Added some missing CVS $Id: ChangeLog,v 1.317 2003/10/16 00:34:03 changelog 
Exp $ tags, headers and footers.
+  - Added some missing CVS $Id: ChangeLog,v 1.318 2003/10/18 00:32:33 changelog 
Exp $ tags, headers and footers.
 
 2003-01-30  Ilia Alshanetsky  [EMAIL PROTECTED]
 


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

2003-10-17 Thread Marcus Boerger
helly   Fri Oct 17 04:01:50 2003 EDT

  Modified files:  
/php-src/ext/sqlite sqlite.c 
  Log:
  pre/hasprev have nothing to do with iteration
  
Index: php-src/ext/sqlite/sqlite.c
diff -u php-src/ext/sqlite/sqlite.c:1.96 php-src/ext/sqlite/sqlite.c:1.97
--- php-src/ext/sqlite/sqlite.c:1.96Sun Sep 21 15:36:40 2003
+++ php-src/ext/sqlite/sqlite.c Fri Oct 17 04:01:49 2003
@@ -17,7 +17,7 @@
|  Marcus Boerger [EMAIL PROTECTED]  |
+--+
 
-   $Id: sqlite.c,v 1.96 2003/09/21 19:36:40 helly Exp $ 
+   $Id: sqlite.c,v 1.97 2003/10/17 08:01:49 helly Exp $ 
 */
 
 #ifdef HAVE_CONFIG_H
@@ -225,12 +225,12 @@
/* spl_forward */
PHP_ME_MAPPING(current, sqlite_current, NULL)
PHP_ME_MAPPING(next, sqlite_next, NULL)
-   PHP_ME_MAPPING(prev, sqlite_prev, NULL)
PHP_ME_MAPPING(hasmore, sqlite_has_more, NULL)
-   PHP_ME_MAPPING(hasprev, sqlite_has_prev, NULL)
/* spl_sequence */
PHP_ME_MAPPING(rewind, sqlite_rewind, NULL)
/* additional */
+   PHP_ME_MAPPING(prev, sqlite_prev, NULL)
+   PHP_ME_MAPPING(hasprev, sqlite_has_prev, NULL)
PHP_ME_MAPPING(num_rows, sqlite_num_rows, NULL)
PHP_ME_MAPPING(seek, sqlite_seek, NULL)
{NULL, NULL, NULL}
@@ -944,7 +944,7 @@
 {
php_info_print_table_start();
php_info_print_table_header(2, SQLite support, enabled);
-   php_info_print_table_row(2, PECL Module version, PHP_SQLITE_MODULE_VERSION  
$Id: sqlite.c,v 1.96 2003/09/21 19:36:40 helly Exp $);
+   php_info_print_table_row(2, PECL Module version, PHP_SQLITE_MODULE_VERSION  
$Id: sqlite.c,v 1.97 2003/10/17 08:01:49 helly Exp $);
php_info_print_table_row(2, SQLite Library, sqlite_libversion());
php_info_print_table_row(2, SQLite Encoding, sqlite_libencoding());
php_info_print_table_end();

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



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

2003-10-17 Thread Marcus Boerger
helly   Fri Oct 17 04:17:09 2003 EDT

  Modified files:  
/php-src/ext/sqlite sqlite.c 
  Log:
  The sqlite classes need to be final
  
Index: php-src/ext/sqlite/sqlite.c
diff -u php-src/ext/sqlite/sqlite.c:1.97 php-src/ext/sqlite/sqlite.c:1.98
--- php-src/ext/sqlite/sqlite.c:1.97Fri Oct 17 04:01:49 2003
+++ php-src/ext/sqlite/sqlite.c Fri Oct 17 04:17:09 2003
@@ -17,7 +17,7 @@
|  Marcus Boerger [EMAIL PROTECTED]  |
+--+
 
-   $Id: sqlite.c,v 1.97 2003/10/17 08:01:49 helly Exp $ 
+   $Id: sqlite.c,v 1.98 2003/10/17 08:17:09 helly Exp $ 
 */
 
 #ifdef HAVE_CONFIG_H
@@ -730,6 +730,7 @@
sqlite_ce_ ## name = zend_register_internal_class_ex(ce, parent, NULL 
TSRMLS_CC); \
memcpy(sqlite_object_handlers_ ## name, 
zend_get_std_object_handlers(), sizeof(zend_object_handlers)); \
sqlite_object_handlers_ ## name.clone_obj = NULL; \
+   sqlite_ce_ ## name-ce_flags |= ZEND_ACC_FINAL_CLASS; \
}
 
 zend_class_entry *sqlite_ce_db, *sqlite_ce_exception;
@@ -944,7 +945,7 @@
 {
php_info_print_table_start();
php_info_print_table_header(2, SQLite support, enabled);
-   php_info_print_table_row(2, PECL Module version, PHP_SQLITE_MODULE_VERSION  
$Id: sqlite.c,v 1.97 2003/10/17 08:01:49 helly Exp $);
+   php_info_print_table_row(2, PECL Module version, PHP_SQLITE_MODULE_VERSION  
$Id: sqlite.c,v 1.98 2003/10/17 08:17:09 helly Exp $);
php_info_print_table_row(2, SQLite Library, sqlite_libversion());
php_info_print_table_row(2, SQLite Encoding, sqlite_libencoding());
php_info_print_table_end();

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



[PHP-CVS] cvs: php-src(PHP_4_3) /main network.c

2003-10-17 Thread Sascha Schumann
sas Fri Oct 17 07:09:53 2003 EDT

  Modified files:  (Branch: PHP_4_3)
/php-src/main   network.c 
  Log:
  Fix comment
  
  
Index: php-src/main/network.c
diff -u php-src/main/network.c:1.83.2.19 php-src/main/network.c:1.83.2.20
--- php-src/main/network.c:1.83.2.19Wed Oct  8 07:22:47 2003
+++ php-src/main/network.c  Fri Oct 17 07:09:49 2003
@@ -16,7 +16,7 @@
| Streams work by Wez Furlong [EMAIL PROTECTED]   |
+--+
  */
-/* $Id: network.c,v 1.83.2.19 2003/10/08 11:22:47 wez Exp $ */
+/* $Id: network.c,v 1.83.2.20 2003/10/17 11:09:49 sas Exp $ */
 
 /*#define DEBUG_MAIN_NETWORK 1*/
 
@@ -1070,7 +1070,7 @@
 
/* try to make sure that the OS sends all data before we close the 
connection.
 * Essentially, we are waiting for the socket to become writeable, 
which means
-* that all pending data has been sent.
+* that some (not all) pending data has been sent.
 * We use a small timeout which should encourage the OS to send the 
data,
 * but at the same time avoid hanging indefintely.
 * */

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



[PHP-CVS] cvs: CVSROOT / avail

2003-10-17 Thread Rasmus Lerdorf
rasmus  Fri Oct 17 10:08:08 2003 EDT

  Modified files:  
/CVSROOTavail 
  Log:
  peardoc access for elf
  
  
Index: CVSROOT/avail
diff -u CVSROOT/avail:1.761 CVSROOT/avail:1.762
--- CVSROOT/avail:1.761 Tue Oct 14 20:46:05 2003
+++ CVSROOT/avail   Fri Oct 17 10:08:07 2003
@@ -55,7 +55,7 @@
 
avail|arnaud,bjoern,chregu,dams,david,jmcastagnetto,rashid,tuupola,silvano|pearweb/weeklynews
 
 # Some people get access to the peardoc
-avail|sroebke,thierry_bo,tony2001,schst|peardoc
+avail|sroebke,thierry_bo,tony2001,schst,elf|peardoc
 
 # access to the newly cut pecl website etc
 avail|pajoye,wez,pollita,tal,cox,mj,helly,john,iliaa,edink|peclweb,pecl

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



[PHP-CVS] cvs: php-src(PHP_4_3) /ext/domxml php_domxml.c

2003-10-17 Thread Rob Richards
rrichards   Fri Oct 17 11:56:07 2003 EDT

  Modified files:  (Branch: PHP_4_3)
/php-src/ext/domxml php_domxml.c 
  Log:
  Fix bug #25888 (Crash of php.exe when xpath_eval of a namespace)
  memleak fix in domxml_node_name
  keep blanks loading document fix
  
Index: php-src/ext/domxml/php_domxml.c
diff -u php-src/ext/domxml/php_domxml.c:1.218.2.32 
php-src/ext/domxml/php_domxml.c:1.218.2.33
--- php-src/ext/domxml/php_domxml.c:1.218.2.32  Wed Sep 17 15:34:42 2003
+++ php-src/ext/domxml/php_domxml.c Fri Oct 17 11:56:06 2003
@@ -16,7 +16,7 @@
+--+
  */
 
-/* $Id: php_domxml.c,v 1.218.2.32 2003/09/17 19:34:42 rrichards Exp $ */
+/* $Id: php_domxml.c,v 1.218.2.33 2003/10/17 15:56:06 rrichards Exp $ */
 
 /* TODO
  * - Support Notation Nodes
@@ -160,6 +160,7 @@
 static int le_domxmlcommentp;
 static int le_domxmlnotationp;
 static int le_domxmlparserp;
+static int le_domxmlnamespacep;
 
 /*static int le_domxmlentityp;*/
 static int le_domxmlentityrefp;
@@ -513,6 +514,13 @@
 };
 
 static zend_function_entry php_domxmlns_class_functions[] = {
+   PHP_FALIAS(node_name,   domxml_node_name,  
 NULL)
+   PHP_FALIAS(node_type,   domxml_node_type,  
 NULL)
+   PHP_FALIAS(node_value,  domxml_node_value, 
 NULL)
+   PHP_FALIAS(prefix,  domxml_node_prefix,
 NULL)
+   PHP_FALIAS(namespace_uri,   domxml_node_namespace_uri, 
 NULL)
+   PHP_FALIAS(owner_document,  domxml_node_owner_document,
 NULL)
+   PHP_FALIAS(parent_node, domxml_node_parent,
 NULL)
{NULL, NULL, NULL}
 };
 
@@ -733,11 +741,19 @@
 
/* if node has no parent, it will not be freed by php_free_xml_doc, so do it 
here
and for all children as well. */
-   if (node-parent == NULL) {
+   if (node-parent == NULL || node-type == XML_NAMESPACE_DECL) {
/* Attribute Nodes ccontain accessible children 
attr_list_wrapper_dtor(node-properties); */
xmlSetTreeDoc(node, NULL);
-   node_list_wrapper_dtor((xmlNodePtr) node-properties, 1 TSRMLS_CC);
+   if (node-type == XML_NAMESPACE_DECL) {
+   if (node-ns) {
+   xmlFreeNs(node-ns);
+   node-ns = NULL;
+   }
+   node-type = XML_ELEMENT_NODE;
+   } else {
+   node_list_wrapper_dtor((xmlNodePtr) node-properties, 1 
TSRMLS_CC);
+   }
node_list_wrapper_dtor(node-children, 1 TSRMLS_CC);
node_wrapper_dtor(node);
xmlFreeNode(node);
@@ -1371,6 +1387,22 @@
break;
}
 
+   case XML_NAMESPACE_DECL:
+   {
+   xmlNodePtr nodep = obj;
+   if(!wrapper_in)
+   object_init_ex(wrapper, domxmlns_class_entry);
+   rsrc_type = le_domxmlnamespacep;
+   add_property_long(wrapper, type, Z_TYPE_P(nodep));
+   add_property_stringl(wrapper, name, (char *) nodep-name, 
strlen(nodep-name), 1);
+   content = xmlNodeGetContent(nodep-children);
+   if (content) {
+   add_property_stringl(wrapper, value, (char *) 
content, strlen(content), 1);
+   xmlFree(content);
+   }
+   break;
+   }
+
default:
php_error_docref(NULL TSRMLS_CC, E_WARNING, Unsupported node 
type: %d\n, Z_TYPE_P(obj));
FREE_ZVAL(wrapper);
@@ -1508,6 +1540,7 @@
le_domxmlpip = zend_register_list_destructors_ex(php_free_xml_node, NULL, 
dompi, module_number);
le_domxmlparserp =  zend_register_list_destructors_ex(php_free_xml_parser, 
NULL, domparser, module_number);
le_domxmldoctypep = zend_register_list_destructors_ex(php_free_xml_node, NULL, 
domdocumenttype, module_number);
+   le_domxmlnamespacep = zend_register_list_destructors_ex(php_free_xml_node, 
NULL, domnamespacenode, module_number);
le_domxmldocp = zend_register_list_destructors_ex(php_free_xml_doc, NULL, 
domdocument, module_number);
/* Freeing the document contains freeing the complete tree.
   Therefore nodes, attributes etc. may not be freed seperately.
@@ -1890,6 +1923,7 @@
zval *id;
xmlNode *n;
int fullQName = 0;
+   xmlChar *qname = NULL;
const char *str = NULL;
 
DOMXML_PARAM_ONE(n, id, 

[PHP-CVS] cvs: php-src /ext/sqlite sqlite.c /ext/sqlite/tests sqlite_oo_025.phpt

2003-10-17 Thread Marcus Boerger
helly   Fri Oct 17 13:21:57 2003 EDT

  Added files: 
/php-src/ext/sqlite/tests   sqlite_oo_025.phpt 

  Modified files:  
/php-src/ext/sqlite sqlite.c 
  Log:
  - Make use of engine iterators
  
  Index: php-src/ext/sqlite/sqlite.c
diff -u php-src/ext/sqlite/sqlite.c:1.98 php-src/ext/sqlite/sqlite.c:1.99
--- php-src/ext/sqlite/sqlite.c:1.98Fri Oct 17 04:17:09 2003
+++ php-src/ext/sqlite/sqlite.c Fri Oct 17 13:21:55 2003
@@ -17,7 +17,7 @@
|  Marcus Boerger [EMAIL PROTECTED]  |
+--+
 
-   $Id: sqlite.c,v 1.98 2003/10/17 08:17:09 helly Exp $ 
+   $Id: sqlite.c,v 1.99 2003/10/17 17:21:55 helly Exp $ 
 */
 
 #ifdef HAVE_CONFIG_H
@@ -150,6 +150,8 @@
zval *fini;
 };
 
+static void php_sqlite_fetch_array(struct php_sqlite_result *res, int mode, zend_bool 
decode_binary, int move_next, zval *return_value TSRMLS_DC);
+static int php_sqlite_fetch(struct php_sqlite_result *rres TSRMLS_DC);
 
 enum { PHPSQLITE_ASSOC = 1, PHPSQLITE_NUM = 2, PHPSQLITE_BOTH = 
PHPSQLITE_ASSOC|PHPSQLITE_NUM };
 
@@ -860,6 +862,123 @@
object-is_ref = 1;
return object;
 }
+
+typedef struct _sqlite_object_iterator {
+   zend_object_iterator it;
+   struct php_sqlite_result *res;
+   zval *value;
+} sqlite_object_iterator;
+
+void sqlite_iterator_dtor(zend_object_iterator *iter TSRMLS_DC)
+{
+   zval *object = (zval*)((sqlite_object_iterator*)iter)-it.data;
+
+   if (((sqlite_object_iterator*)iter)-value) {
+   zval_ptr_dtor(((sqlite_object_iterator*)iter)-value);
+   ((sqlite_object_iterator*)iter)-value = NULL;
+   }
+   zval_ptr_dtor(object);
+   efree(iter);
+}
+
+void sqlite_iterator_rewind(zend_object_iterator *iter TSRMLS_DC)
+{
+   struct php_sqlite_result *res = ((sqlite_object_iterator*)iter)-res;
+
+   if (((sqlite_object_iterator*)iter)-value) {
+   zval_ptr_dtor(((sqlite_object_iterator*)iter)-value);
+   ((sqlite_object_iterator*)iter)-value = NULL;
+   }
+   if (res) {
+   res-curr_row = 0;
+   }
+}
+
+int sqlite_iterator_has_more(zend_object_iterator *iter TSRMLS_DC)
+{
+   struct php_sqlite_result *res = ((sqlite_object_iterator*)iter)-res;
+
+   if (res  res-curr_row  res-nrows  res-nrows) { /* curr_row may be -1 */
+   return SUCCESS;
+   } else {
+   return FAILURE;
+   }
+}
+
+void sqlite_iterator_get_current_data(zend_object_iterator *iter, zval ***data 
TSRMLS_DC)
+{
+   struct php_sqlite_result *res = ((sqlite_object_iterator*)iter)-res;
+
+   *data = ((sqlite_object_iterator*)iter)-value;
+   if (res  !**data) {
+   MAKE_STD_ZVAL(**data);
+   php_sqlite_fetch_array(res, PHPSQLITE_NUM, 1, 0, **data TSRMLS_CC);
+   }
+   
+}
+
+int sqlite_iterator_get_current_key(zend_object_iterator *iter, char **str_key, uint 
*str_key_len, ulong *int_key TSRMLS_DC)
+{
+   struct php_sqlite_result *res = ((sqlite_object_iterator*)iter)-res;
+
+   *str_key = NULL;
+   *str_key_len = 0;
+   *int_key = res ? res-curr_row : 0;
+   return HASH_KEY_IS_LONG;
+}
+
+void sqlite_iterator_move_forward(zend_object_iterator *iter TSRMLS_DC)
+{
+   struct php_sqlite_result *res = ((sqlite_object_iterator*)iter)-res;
+
+   if (((sqlite_object_iterator*)iter)-value) {
+   zval_ptr_dtor(((sqlite_object_iterator*)iter)-value);
+   ((sqlite_object_iterator*)iter)-value = NULL;
+   }
+   if (res) {
+   if (!res-buffered  res-vm) {
+   php_sqlite_fetch(res TSRMLS_CC);
+   }
+   if (res-curr_row = res-nrows) {
+   /* php_error_docref(NULL TSRMLS_CC, E_WARNING, no more rows 
available); */
+   return;
+   }
+   
+   res-curr_row++;
+   }
+}
+
+zend_class_iterator_funcs sqlite_ub_query_iterator_funcs;
+
+zend_object_iterator *sqlite_ub_query_get_iterator(zend_class_entry *ce, zval *object 
TSRMLS_DC)
+{
+   sqlite_object_iterator *iterator = emalloc(sizeof(sqlite_object_iterator));
+
+   sqlite_object *obj = (sqlite_object*) zend_object_store_get_object(object 
TSRMLS_CC);
+
+   object-refcount++;
+   iterator-it.data = (void*)object;
+   iterator-it.funcs = sqlite_ub_query_iterator_funcs.funcs;
+   iterator-res = obj-u.res;
+   iterator-value = NULL;
+   return (zend_object_iterator*)iterator;
+}
+
+zend_class_iterator_funcs sqlite_query_iterator_funcs;
+
+zend_object_iterator *sqlite_query_get_iterator(zend_class_entry *ce, zval *object 
TSRMLS_DC)
+{
+   sqlite_object_iterator *iterator = emalloc(sizeof(sqlite_object_iterator));
+
+   sqlite_object *obj = (sqlite_object*) zend_object_store_get_object(object 
TSRMLS_CC);
+
+   object-refcount++;
+ 

[PHP-CVS] cvs: CVSROOT / avail

2003-10-17 Thread James Cox
imajes  Fri Oct 17 15:44:23 2003 EDT

  Modified files:  
/CVSROOTavail 
  Log:
  giving John access to pres
  
  
Index: CVSROOT/avail
diff -u CVSROOT/avail:1.762 CVSROOT/avail:1.763
--- CVSROOT/avail:1.762 Fri Oct 17 10:08:07 2003
+++ CVSROOT/avail   Fri Oct 17 15:44:22 2003
@@ -36,7 +36,7 @@
 # The PHP Presentation Group has access to the presentations on the
 # conf.php.net site.
 
-avail|sterling,jon,graeme,derick,imajes,wez,jmcastagnetto,shiflett,nohn,sebastian,vmarshall,alan_k,lhl,eru,sklar,wenz,zak,gschlossnagle,jacques,pollita,amt|pres,pres2,presentations
+avail|sterling,jon,graeme,derick,imajes,wez,jmcastagnetto,shiflett,nohn,sebastian,vmarshall,alan_k,lhl,eru,sklar,wenz,zak,gschlossnagle,jacques,pollita,amt,john|pres,pres2,presentations
 
 # The PHP Quality Assurance Team maintains their own website.
 

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



[PHP-CVS] cvs: php-src /ext/com_dotnet com_extension.c com_iterator.c php_com_dotnet_internal.h /win32 php4dllts.dsp

2003-10-17 Thread Wez Furlong
wez Fri Oct 17 16:52:19 2003 EDT

  Added files: 
/php-src/ext/com_dotnet com_iterator.c 

  Modified files:  
/php-src/ext/com_dotnet com_extension.c php_com_dotnet_internal.h 
/php-src/win32  php4dllts.dsp 
  Log:
  add com iterator support
  
Index: php-src/ext/com_dotnet/com_extension.c
diff -u php-src/ext/com_dotnet/com_extension.c:1.2 
php-src/ext/com_dotnet/com_extension.c:1.3
--- php-src/ext/com_dotnet/com_extension.c:1.2  Mon Aug 18 16:45:00 2003
+++ php-src/ext/com_dotnet/com_extension.c  Fri Oct 17 16:52:17 2003
@@ -16,7 +16,7 @@
+--+
  */
 
-/* $Id: com_extension.c,v 1.2 2003/08/18 20:45:00 zeev Exp $ */
+/* $Id: com_extension.c,v 1.3 2003/10/17 20:52:17 wez Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -112,10 +112,12 @@
 
INIT_CLASS_ENTRY(ce, variant, NULL);
ce.create_object = php_com_object_new;
+   ce.get_iterator = php_com_iter_get;
php_com_variant_class_entry = zend_register_internal_class(ce TSRMLS_CC);
 
INIT_CLASS_ENTRY(ce, com, NULL);
ce.create_object = php_com_object_new;
+   ce.get_iterator = php_com_iter_get;
zend_register_internal_class_ex(ce, php_com_variant_class_entry, variant 
TSRMLS_CC);
 
zend_ts_hash_init(php_com_typelibraries, 0, NULL, php_com_typelibrary_dtor, 
1);
@@ -123,6 +125,7 @@
 #if HAVE_MSCOREE_H
INIT_CLASS_ENTRY(ce, dotnet, NULL);
ce.create_object = php_com_object_new;
+   ce.get_iterator = php_com_iter_get;
zend_register_internal_class_ex(ce, php_com_variant_class_entry, variant 
TSRMLS_CC);
 #endif
 
Index: php-src/ext/com_dotnet/php_com_dotnet_internal.h
diff -u php-src/ext/com_dotnet/php_com_dotnet_internal.h:1.2 
php-src/ext/com_dotnet/php_com_dotnet_internal.h:1.3
--- php-src/ext/com_dotnet/php_com_dotnet_internal.h:1.2Sun Oct 12 21:29:39 
2003
+++ php-src/ext/com_dotnet/php_com_dotnet_internal.hFri Oct 17 16:52:17 2003
@@ -16,7 +16,7 @@
+--+
  */
 
-/* $Id: php_com_dotnet_internal.h,v 1.2 2003/10/13 01:29:39 wez Exp $ */
+/* $Id: php_com_dotnet_internal.h,v 1.3 2003/10/17 20:52:17 wez Exp $ */
 
 #ifndef PHP_COM_DOTNET_INTERNAL_H
 #define PHP_COM_DOTNET_INTERNAL_H
@@ -140,6 +140,9 @@
 PHPAPI int php_com_import_typelib(ITypeLib *TL, int mode,
int codepage TSRMLS_DC);
 void php_com_typelibrary_dtor(void *pDest);
+
+/* com_iterator.c */
+zend_object_iterator *php_com_iter_get(zend_class_entry *ce, zval *object TSRMLS_DC);
 
 
 #endif
Index: php-src/win32/php4dllts.dsp
diff -u php-src/win32/php4dllts.dsp:1.133 php-src/win32/php4dllts.dsp:1.134
--- php-src/win32/php4dllts.dsp:1.133   Sat Sep  6 09:09:04 2003
+++ php-src/win32/php4dllts.dsp Fri Oct 17 16:52:18 2003
@@ -2324,6 +2324,10 @@
 # End Source File
 # Begin Source File
 
+SOURCE=..\ext\com_dotnet\com_iterator.c
+# End Source File
+# Begin Source File
+
 SOURCE=..\ext\com_dotnet\com_misc.c
 # End Source File
 # Begin Source File

Index: php-src/ext/com_dotnet/com_iterator.c
+++ php-src/ext/com_dotnet/com_iterator.c
/*
   +--+
   | PHP Version 4|
   +--+
   | Copyright (c) 1997-2003 The PHP Group|
   +--+
   | This source file is subject to version 3.0 of the PHP license,   |
   | that is bundled with this package in the file LICENSE, and is|
   | available through the world-wide-web at the following url:   |
   | http://www.php.net/license/3_0.txt.  |
   | If you did not receive a copy of the PHP license and are unable to   |
   | obtain it through the world-wide-web, please send a note to  |
   | [EMAIL PROTECTED] so we can mail you a copy immediately.   |
   +--+
   | Author: Wez Furlong [EMAIL PROTECTED]   |
   +--+
 */

/* $Id: com_iterator.c,v 1.1 2003/10/17 20:52:17 wez Exp $ */

#ifdef HAVE_CONFIG_H
#include config.h
#endif

#include php.h
#include php_ini.h
#include ext/standard/info.h
#include php_com_dotnet.h
#include php_com_dotnet_internal.h
#include Zend/zend_default_classes.h

struct php_com_iterator {
zend_object_iterator iter;
IEnumVARIANT *ev;
ulong key;
VARIANT v;
int code_page;
};

static void com_iter_dtor(zend_object_iterator *iter TSRMLS_DC)
{
struct php_com_iterator *I = (struct php_com_iterator*)iter-data;

if (I-ev) {
IEnumVARIANT_Release(I-ev);

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

2003-10-17 Thread Wez Furlong
wez Fri Oct 17 17:03:01 2003 EDT

  Modified files:  
/php-src/ext/com_dotnet com_iterator.c 
  Log:
  fix cruft from previous incarnation of the iterators
  
Index: php-src/ext/com_dotnet/com_iterator.c
diff -u php-src/ext/com_dotnet/com_iterator.c:1.1 
php-src/ext/com_dotnet/com_iterator.c:1.2
--- php-src/ext/com_dotnet/com_iterator.c:1.1   Fri Oct 17 16:52:17 2003
+++ php-src/ext/com_dotnet/com_iterator.c   Fri Oct 17 17:03:01 2003
@@ -16,7 +16,7 @@
+--+
  */
 
-/* $Id: com_iterator.c,v 1.1 2003/10/17 20:52:17 wez Exp $ */
+/* $Id: com_iterator.c,v 1.2 2003/10/17 21:03:01 wez Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include config.h
@@ -64,9 +64,10 @@
zval **ptr_ptr;
zval *ptr;
 
+   /* sanity */
if (I-key == (ulong)-1) {
*data = NULL;
-   return FAILURE;
+   return;
}
 
MAKE_STD_ZVAL(ptr);
@@ -75,7 +76,7 @@
*ptr_ptr = ptr;
*data = ptr_ptr;
 
-   return SUCCESS;
+   return;
 }
 
 static int com_iter_get_key(zend_object_iterator *iter, char **str_key, uint 
*str_key_len,

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



[PHP-CVS] cvs: php-src(PHP_4_3) /sapi/nsapi nsapi-readme.txt

2003-10-17 Thread Uwe Schindler
thetaphiFri Oct 17 17:57:46 2003 EDT

  Modified files:  (Branch: PHP_4_3)
/php-src/sapi/nsapi nsapi-readme.txt 
  Log:
  new SunONE server
  
Index: php-src/sapi/nsapi/nsapi-readme.txt
diff -u php-src/sapi/nsapi/nsapi-readme.txt:1.3.8.7 
php-src/sapi/nsapi/nsapi-readme.txt:1.3.8.8
--- php-src/sapi/nsapi/nsapi-readme.txt:1.3.8.7 Mon Aug  4 08:46:38 2003
+++ php-src/sapi/nsapi/nsapi-readme.txt Fri Oct 17 17:57:45 2003
@@ -37,7 +37,7 @@
Windows: c:/path/to/PHP4/php4nsapi.dll
 
 
-In obj.conf (for virtual server classes [SunONE 6.0] in their vserver.obj.conf):
+In obj.conf (for virtual server classes [SunONE 6.0+] in their vserver.obj.conf):
 
 Object name=default
 .
@@ -133,7 +133,7 @@
 
 Under Windows limitations in the DLL handling need the use of a automatic
 detection of the most recent ns-httpdXX.dll file. This is tested for servers
-till version 6.0. If a newer version of the SunONE server is used, the detection
+till version 6.1. If a newer version of the SunONE server is used, the detection
 fails and nsapi_virtual() is disabled.
 
 If this is the case, try the following:
@@ -147,4 +147,4 @@
 But be warned: SUPPORT FOR nsapi_virtual() IS EXPERIMENTAL !!!
 
 
-$Id: nsapi-readme.txt,v 1.3.8.7 2003/08/04 12:46:38 thetaphi Exp $
+$Id: nsapi-readme.txt,v 1.3.8.8 2003/10/17 21:57:45 thetaphi Exp $

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



[PHP-CVS] cvs: php-src /sapi/nsapi nsapi-readme.txt

2003-10-17 Thread Uwe Schindler
thetaphiFri Oct 17 17:58:26 2003 EDT

  Modified files:  
/php-src/sapi/nsapi nsapi-readme.txt 
  Log:
  new SunONE server
  
Index: php-src/sapi/nsapi/nsapi-readme.txt
diff -u php-src/sapi/nsapi/nsapi-readme.txt:1.10 
php-src/sapi/nsapi/nsapi-readme.txt:1.11
--- php-src/sapi/nsapi/nsapi-readme.txt:1.10Mon Aug  4 08:46:03 2003
+++ php-src/sapi/nsapi/nsapi-readme.txt Fri Oct 17 17:58:26 2003
@@ -37,7 +37,7 @@
Windows: c:/path/to/php5/php5nsapi.dll
 
 
-In obj.conf (for virtual server classes [SunONE 6.0] in their vserver.obj.conf):
+In obj.conf (for virtual server classes [SunONE 6.0+] in their vserver.obj.conf):
 
 Object name=default
 .
@@ -133,7 +133,7 @@
 
 Under Windows limitations in the DLL handling need the use of a automatic
 detection of the most recent ns-httpdXX.dll file. This is tested for servers
-till version 6.0. If a newer version of the SunONE server is used, the detection
+till version 6.1. If a newer version of the SunONE server is used, the detection
 fails and nsapi_virtual() is disabled.
 
 If this is the case, try the following:
@@ -147,4 +147,4 @@
 But be warned: SUPPORT FOR nsapi_virtual() IS EXPERIMENTAL !!!
 
 
-$Id: nsapi-readme.txt,v 1.10 2003/08/04 12:46:03 thetaphi Exp $
+$Id: nsapi-readme.txt,v 1.11 2003/10/17 21:58:26 thetaphi Exp $

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