X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-pq;a=blobdiff_plain;f=src%2Fphp_pqtypes.c;h=8f4b53d697af6e1e36fee0a4b205864489549193;hp=e5733da650d748a76a0b39336ea85ab2eda78f0a;hb=da7b5981c5ae28504434c492d468913645111d66;hpb=a04c77181328660f1ca748cb82a20abe43cebb65 diff --git a/src/php_pqtypes.c b/src/php_pqtypes.c index e5733da..8f4b53d 100644 --- a/src/php_pqtypes.c +++ b/src/php_pqtypes.c @@ -207,7 +207,7 @@ static PHP_METHOD(pqtypes, __construct) { obj->intern = ecalloc(1, sizeof(*obj->intern)); obj->intern->conn = conn_obj; php_pq_object_addref(conn_obj TSRMLS_CC); - zend_hash_init(&obj->intern->types, 300, NULL, ZVAL_PTR_DTOR, 0); + zend_hash_init(&obj->intern->types, 512, NULL, ZVAL_PTR_DTOR, 0); if (znsp) { zend_call_method_with_1_params(&getThis(), Z_OBJCE_P(getThis()), NULL, "refresh", &retval, znsp); @@ -337,6 +337,10 @@ PHP_MINIT_FUNCTION(pqtypes) php_pqtypes_class_entry = zend_register_internal_class_ex(&ce, NULL, NULL TSRMLS_CC); php_pqtypes_class_entry->create_object = php_pqtypes_create_object; + /* + zend_class_implements(php_pqtypes_class_entry TSRMLS_CC, 1, zend_ce_arrayaccess); + */ + memcpy(&php_pqtypes_object_handlers, zend_get_std_object_handlers(), sizeof(zend_object_handlers)); php_pqtypes_object_handlers.read_property = php_pq_object_read_prop; php_pqtypes_object_handlers.write_property = php_pq_object_write_prop; @@ -356,14 +360,9 @@ PHP_MINIT_FUNCTION(pqtypes) ph.read = php_pqtypes_object_read_connection; zend_hash_add(&php_pqtypes_object_prophandlers, "connection", sizeof("connection"), (void *) &ph, sizeof(ph), NULL); -#ifdef HAVE_PHP_PQ_TYPE_H # undef PHP_PQ_TYPE # define PHP_PQ_TYPE(name, oid) zend_declare_class_constant_long(php_pqtypes_class_entry, ZEND_STRL(name), oid TSRMLS_CC); # include "php_pq_type.h" - zend_declare_class_constant_bool(php_pqtypes_class_entry, ZEND_STRL("DEFINED"), 1 TSRMLS_CC); -#else - zend_declare_class_constant_bool(php_pqtypes_class_entry, ZEND_STRL("DEFINED"), 0 TSRMLS_CC); -#endif return SUCCESS; }