[prev in list] [next in list] [prev in thread] [next in thread]
List: pecl-cvs
Subject: [PECL-CVS] cvs: pecl /mongo collection.c db.c gridfs.c mongo.c mongo.h mongo_types.c package.xml uti
From: "Kristina Chodorow" <kristina () php ! net>
Date: 2009-05-20 20:23:33
Message-ID: cvskristina1242851013 () cvsserver
[Download RAW message or body]
kristina Wed May 20 20:23:33 2009 UTC
Modified files:
/pecl/mongo collection.c db.c gridfs.c mongo.c mongo.h
mongo_types.c package.xml util.c
Log:
PHP 5.3 compatibility
["kristina-20090520202333.txt" (text/plain)]
http://cvs.php.net/viewvc.cgi/pecl/mongo/collection.c?r1=1.1&r2=1.2&diff_format=u
Index: pecl/mongo/collection.c
diff -u pecl/mongo/collection.c:1.1 pecl/mongo/collection.c:1.2
--- pecl/mongo/collection.c:1.1 Tue May 19 14:06:54 2009
+++ pecl/mongo/collection.c Wed May 20 20:23:33 2009
@@ -88,12 +88,11 @@
array_init(data);
add_assoc_string(data, "drop", Z_STRVAL_P(name), 1);
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, data, db, 3, NULL);
-
+ PUSH_PARAM(zlink); PUSH_PARAM(data); PUSH_PARAM(db); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, return_value, return_value_ptr, NULL, return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&data);
}
@@ -121,11 +120,11 @@
zval *db = zend_read_property(mongo_ce_Collection, getThis(), "db", strlen("db"), \
NOISY TSRMLS_CC); db = zend_read_property(mongo_ce_DB, db, "name", strlen("name"), \
NOISY TSRMLS_CC);
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, data, db, 3, NULL);
+ PUSH_PARAM(zlink); PUSH_PARAM(data); PUSH_PARAM(db); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, return_value, return_value_ptr, NULL, return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&data);
}
@@ -194,7 +193,6 @@
}
PHP_METHOD(MongoCollection, find) {
- void *holder;
zval *query = 0, *fields = 0;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|aa", &query, &fields) == \
FAILURE) { return;
@@ -205,21 +203,25 @@
object_init_ex(return_value, mongo_ce_Cursor);
- zend_ptr_stack_2_push(&EG(argument_stack), connection, ns);
-
+ PUSH_PARAM(connection); PUSH_PARAM(ns);
if (query) {
- zend_ptr_stack_push(&EG(argument_stack), query);
+ PUSH_PARAM(query);
if (fields) {
- zend_ptr_stack_push(&EG(argument_stack), fields);
+ PUSH_PARAM(fields);
}
}
- zend_ptr_stack_2_push(&EG(argument_stack), (void*)ZEND_NUM_ARGS()+2, NULL);
-
+ PUSH_PARAM((void*)(ZEND_NUM_ARGS()+2));
+ PUSH_EO_PARAM();
+
zval temp;
zim_MongoCursor___construct(ZEND_NUM_ARGS()+2, &temp, NULL, return_value, \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), ZEND_NUM_ARGS()+4, &holder, &holder, \
&holder, &holder, &holder, &holder); + POP_EO_PARAM();
+ int i = 0;
+ while(i++ < ZEND_NUM_ARGS()+3) {
+ POP_PARAM();
+ }
}
PHP_METHOD(MongoCollection, findOne) {
@@ -232,22 +234,27 @@
MAKE_STD_ZVAL(cursor);
if (query) {
- zend_ptr_stack_n_push(&EG(argument_stack), 3, query, 1, NULL);
+ PUSH_PARAM(query);
+ PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
}
zim_MongoCollection_find(ZEND_NUM_ARGS(), cursor, &cursor, getThis(), \
return_value_used TSRMLS_CC);
- void *holder;
if (query) {
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM();
+ POP_PARAM();
}
zval limit;
limit.type = IS_LONG;
limit.value.lval = 1;
- zend_ptr_stack_n_push(&EG(argument_stack), 3, &limit, 1, NULL);
+ PUSH_PARAM(&limit); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCursor_limit(1, cursor, &cursor, cursor, return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zim_MongoCursor_getNext(0, return_value, return_value_ptr, cursor, \
return_value_used TSRMLS_CC);
@@ -345,10 +352,11 @@
zval *collection;
MAKE_STD_ZVAL(collection);
- void *holder;
- zend_ptr_stack_n_push(&EG(argument_stack), 3, system_indexes, 1, NULL);
+ PUSH_PARAM(system_indexes); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoDB_selectCollection(1, collection, &collection, db, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
// set up data
zval *data;
@@ -366,17 +374,21 @@
MAKE_STD_ZVAL(key_str);
// MongoUtil::toIndexString()
- zend_ptr_stack_n_push(&EG(argument_stack), 3, keys, 1, NULL);
+ PUSH_PARAM(keys); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoUtil_toIndexString(1, key_str, &key_str, NULL, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
add_assoc_zval(data, "name", key_str);
add_assoc_bool(data, "unique", unique);
// MongoCollection::insert()
- zend_ptr_stack_n_push(&EG(argument_stack), 3, data, 1, NULL);
+ PUSH_PARAM(data); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCollection_insert(1, return_value, return_value_ptr, collection, \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&data);
zval_ptr_dtor(&system_indexes);
@@ -389,14 +401,14 @@
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z", &keys) == FAILURE) {
return;
}
-
- void *holder;
zval *key_str;
MAKE_STD_ZVAL(key_str);
- zend_ptr_stack_n_push(&EG(argument_stack), 3, keys, 1, NULL);
+ PUSH_PARAM(keys); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoUtil_toIndexString(1, key_str, &key_str, NULL, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval *name = zend_read_property(mongo_ce_Collection, getThis(), "name", \
strlen("name"), NOISY TSRMLS_CC); zval *db = zend_read_property(mongo_ce_Collection, \
getThis(), "db", strlen("db"), NOISY TSRMLS_CC); @@ -410,10 +422,12 @@
add_assoc_zval(data, "deleteIndexes", name);
zval_add_ref(&key_str);
add_assoc_zval(data, "index", key_str);
-
- zend_ptr_stack_n_push(&EG(argument_stack), 5, connection, data, db_name, 3, NULL);
+
+ PUSH_PARAM(connection); PUSH_PARAM(data); PUSH_PARAM(db_name); \
PUSH_PARAM((void*)3); + PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, return_value, return_value_ptr, NULL, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&data);
zval_ptr_dtor(&key_str);
@@ -434,12 +448,11 @@
zval *db = zend_read_property(mongo_ce_Collection, getThis(), "db", strlen("db"), \
0 TSRMLS_CC); db = zend_read_property(mongo_ce_Collection, db, "name", \
strlen("name"), 0 TSRMLS_CC);
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, data, db, 3, NULL);
-
+ PUSH_PARAM(zlink); PUSH_PARAM(data); PUSH_PARAM(db); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, return_value, return_value_ptr, NULL, return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&data);
}
@@ -455,10 +468,11 @@
MAKE_STD_ZVAL(i_str);
ZVAL_STRING(i_str, "system.indexes", 1);
- void *holder;
- zend_ptr_stack_n_push(&EG(argument_stack), 3, i_str, 1, NULL);
+ PUSH_PARAM(i_str); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoDB_selectCollection(1, collection, &collection, db, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval *query;
MAKE_STD_ZVAL(query);
@@ -468,9 +482,12 @@
zval *cursor;
MAKE_STD_ZVAL(cursor);
- zend_ptr_stack_n_push(&EG(argument_stack), 3, query, 1, NULL);
+
+ PUSH_PARAM(query); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCollection_find(1, cursor, &cursor, collection, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
array_init(return_value);
@@ -502,15 +519,17 @@
zval *response;
MAKE_STD_ZVAL(response);
- void *holder;
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, data, db_name, 3, NULL);
+ PUSH_PARAM(zlink); PUSH_PARAM(data); PUSH_PARAM(db_name); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, response, &response, NULL, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&data);
zval **n;
if (zend_hash_find(Z_ARRVAL_P(response), "n", 2, (void**)&n) == SUCCESS) {
- RETURN_ZVAL(*n, 1, 1);
+ RETVAL_ZVAL(*n, 1, 0);
+ zval_ptr_dtor(&response);
}
else {
RETURN_ZVAL(response, 0, 1);
@@ -523,7 +542,6 @@
return;
}
- zval *holder;
zval **id;
if (zend_hash_find(Z_ARRVAL_P(a), "_id", 4, (void**)&id) == SUCCESS) {
zval *criteria;
@@ -535,16 +553,20 @@
Z_TYPE(zupsert) = IS_BOOL;
zupsert.value.lval = 1;
- zend_ptr_stack_n_push(&EG(argument_stack), 5, criteria, a, &zupsert, 3, NULL);
+ PUSH_PARAM(criteria); PUSH_PARAM(a); PUSH_PARAM(&zupsert); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoCollection_update(3, return_value, return_value_ptr, getThis(), \
return_value_used TSRMLS_CC); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); return;
}
- zend_ptr_stack_n_push(&EG(argument_stack), 3, a, 1, NULL);
+ PUSH_PARAM(a); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCollection_insert(1, return_value, return_value_ptr, getThis(), \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
}
PHP_METHOD(MongoCollection, createDBRef) {
@@ -556,10 +578,11 @@
zval *db = zend_read_property(mongo_ce_Collection, getThis(), "db", strlen("db"), \
NOISY TSRMLS_CC); zval *name = zend_read_property(mongo_ce_Collection, getThis(), \
"name", strlen("name"), NOISY TSRMLS_CC);
- void *holder;
- zend_ptr_stack_n_push(&EG(argument_stack), 4, name, obj, 2, NULL);
+ PUSH_PARAM(name); PUSH_PARAM(obj); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
zim_MongoDB_createDBRef(2, return_value, return_value_ptr, db, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
}
PHP_METHOD(MongoCollection, getDBRef) {
@@ -570,10 +593,11 @@
zval *db = zend_read_property(mongo_ce_Collection, getThis(), "db", strlen("db"), \
NOISY TSRMLS_CC);
- void *holder;
- zend_ptr_stack_n_push(&EG(argument_stack), 3, ref, 1, NULL);
+ PUSH_PARAM(ref); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoDB_getDBRef(1, return_value, return_value_ptr, db, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
}
static function_entry MongoCollection_methods[] = {
http://cvs.php.net/viewvc.cgi/pecl/mongo/db.c?r1=1.1&r2=1.2&diff_format=u
Index: pecl/mongo/db.c
diff -u pecl/mongo/db.c:1.1 pecl/mongo/db.c:1.2
--- pecl/mongo/db.c:1.1 Tue May 19 14:06:54 2009
+++ pecl/mongo/db.c Wed May 20 20:23:33 2009
@@ -73,11 +73,12 @@
MAKE_STD_ZVAL(obj);
object_init_ex(obj, mongo_ce_Collection);
- zend_ptr_stack_n_push(&EG(argument_stack), 4, getThis(), collection, 2, NULL);
+ PUSH_PARAM(getThis()); PUSH_PARAM(collection); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
zim_MongoCollection___construct(2, return_value, return_value_ptr, obj, \
return_value_used TSRMLS_CC); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
RETURN_ZVAL(obj, 0, 1);
}
@@ -89,27 +90,28 @@
}
zval temp;
- void *holder;
-
object_init_ex(return_value, mongo_ce_GridFS);
-
- zend_ptr_stack_push(&EG(argument_stack), getThis());
+
+ PUSH_PARAM(getThis());
if (arg1) {
- zend_ptr_stack_push(&EG(argument_stack), arg1);
+ PUSH_PARAM(arg1);
if (arg2) {
- zend_ptr_stack_push(&EG(argument_stack), arg2);
+ PUSH_PARAM(arg2);
}
}
- zend_ptr_stack_2_push(&EG(argument_stack), (void*)ZEND_NUM_ARGS()+1, NULL);
+ PUSH_PARAM((void*)ZEND_NUM_ARGS()+1);
+ PUSH_EO_PARAM();
zim_MongoGridFS___construct(ZEND_NUM_ARGS()+1, &temp, NULL, return_value, \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+
+ POP_PARAM(); POP_PARAM();
if (arg1) {
- zend_ptr_stack_pop(&EG(argument_stack));
+ POP_PARAM();
if (arg2) {
- zend_ptr_stack_pop(&EG(argument_stack));
+ POP_PARAM();
}
}
}
@@ -119,11 +121,11 @@
Z_TYPE(l) = IS_LONG;
Z_LVAL(l) = -1;
- zend_ptr_stack_n_push(&EG(argument_stack), 3, &l, 1, NULL);
+ PUSH_PARAM(&l); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoDB_setProfilingLevel(1, return_value, return_value_ptr, getThis(), \
return_value_used TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
}
PHP_METHOD(MongoDB, setProfilingLevel) {
@@ -145,12 +147,11 @@
MAKE_STD_ZVAL(cmd_return);
cmd_ptr = cmd_return;
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, data, name, 3, NULL);
+ PUSH_PARAM(zlink); PUSH_PARAM(data); PUSH_PARAM(name); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, cmd_return, &cmd_return, NULL, return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder);
- zval_ptr_dtor(&data);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
zval **ok;
if (zend_hash_find(Z_ARRVAL_P(cmd_return), "ok", 3, (void**)&ok) == SUCCESS &&
@@ -177,18 +178,13 @@
zval *name = zend_read_property(mongo_ce_Mongo, getThis(), "name", strlen("name"), \
0 TSRMLS_CC);
- zval *cmd_return, *cmd_ptr;
- MAKE_STD_ZVAL(cmd_return);
- cmd_ptr = cmd_return;
-
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, data, name, 3, NULL);
- zim_MongoUtil_dbCommand(3, cmd_return, &cmd_return, NULL, return_value_used \
TSRMLS_CC); + PUSH_PARAM(zlink); PUSH_PARAM(data); PUSH_PARAM(name); \
PUSH_PARAM((void*)3); + PUSH_EO_PARAM();
+ zim_MongoUtil_dbCommand(3, return_value, return_value_ptr, NULL, return_value_used \
TSRMLS_CC); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); zval_ptr_dtor(&data);
- zval_ptr_dtor(&cmd_return);
- zval_ptr_dtor(&cmd_ptr);
}
PHP_METHOD(MongoDB, repair) {
@@ -212,11 +208,12 @@
MAKE_STD_ZVAL(cmd_return);
cmd_ptr = cmd_return;
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, data, name, 3, NULL);
+ PUSH_PARAM(zlink); PUSH_PARAM(data); PUSH_PARAM(name); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, cmd_return, &cmd_return, NULL, return_value_used \
TSRMLS_CC); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); zval_ptr_dtor(&data);
zval_ptr_dtor(&cmd_return);
zval_ptr_dtor(&cmd_ptr);
@@ -251,16 +248,18 @@
MAKE_STD_ZVAL(cmd_return);
cmd_ptr = cmd_return;
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, data, name, 3, NULL);
+ PUSH_PARAM(zlink); PUSH_PARAM(data); PUSH_PARAM(name); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, cmd_return, &cmd_return, NULL, return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
// get the collection we just created
- zend_ptr_stack_n_push(&EG(argument_stack), 3, collection, 1, NULL);
+ PUSH_PARAM(collection); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoDB_selectCollection(1, return_value, return_value_ptr, getThis(), \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&data);
zval_ptr_dtor(&cmd_ptr);
@@ -274,11 +273,12 @@
if (Z_TYPE_P(collection) != IS_OBJECT ||
Z_OBJCE_P(collection) != mongo_ce_Collection) {
- zend_ptr_stack_n_push(&EG(argument_stack), 4, getThis(), collection, 2, NULL);
- zim_MongoDB_selectCollection(1, collection, &collection, getThis(), \
return_value_used TSRMLS_CC);
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, \
&holder); + PUSH_PARAM(getThis()); PUSH_PARAM(collection); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
+ zim_MongoDB_selectCollection(1, collection, &collection, getThis(), \
return_value_used TSRMLS_CC); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
}
zim_MongoCollection_drop(0, return_value, return_value_ptr, collection, \
return_value_used TSRMLS_CC); }
@@ -292,11 +292,11 @@
zval *collection;
MAKE_STD_ZVAL(collection);
- zend_ptr_stack_n_push(&EG(argument_stack), 3, nss, 1, NULL);
+ PUSH_PARAM(nss); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoDB_selectCollection(1, collection, &collection, getThis(), \
return_value_used TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
// do find
zval *cursor;
@@ -342,21 +342,21 @@
}
PHP_METHOD(MongoDB, getCursorInfo) {
- zval *zlink = zend_read_property(mongo_ce_Mongo, getThis(), "connection", \
strlen("connection"), 0 TSRMLS_CC); + zval *zlink = \
zend_read_property(mongo_ce_Mongo, getThis(), "connection", strlen("connection"), \
NOISY TSRMLS_CC);
zval *data;
MAKE_STD_ZVAL(data);
array_init(data);
add_assoc_long(data, "cursorInfo", 1);
- zval *zname = zend_read_property(mongo_ce_Mongo, getThis(), "name", \
strlen("name"), 0 TSRMLS_CC);
-
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, data, zname, 3, NULL);
+ zval *name = zend_read_property(mongo_ce_Mongo, getThis(), "name", strlen("name"), \
NOISY TSRMLS_CC);
+ PUSH_PARAM(zlink); PUSH_PARAM(data); PUSH_PARAM(name); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, return_value, &return_value, getThis(), \
return_value_used TSRMLS_CC); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); zval_ptr_dtor(&data);
}
@@ -366,16 +366,18 @@
return;
}
- void *holder;
zval **id;
if (Z_TYPE_P(obj) == IS_ARRAY &&
zend_hash_find(Z_ARRVAL_P(obj), "_id", 4, (void**)&id) == SUCCESS) {
zval_add_ref(&ns);
zval_add_ref(id);
- zend_ptr_stack_n_push(&EG(argument_stack), 4, ns, *id, 2, NULL);
+
+ PUSH_PARAM(ns); PUSH_PARAM(*id); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
zim_MongoDBRef_create(2, return_value, return_value_ptr, NULL, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
return;
}
@@ -384,9 +386,12 @@
zval_add_ref(&ns);
zval_add_ref(&obj);
- zend_ptr_stack_n_push(&EG(argument_stack), 4, ns, obj, 2, NULL);
+
+ PUSH_PARAM(ns); PUSH_PARAM(obj); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
zim_MongoDBRef_create(2, return_value, return_value_ptr, NULL, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
return;
}
@@ -399,12 +404,11 @@
return;
}
- zend_ptr_stack_n_push(&EG(argument_stack), 4, getThis(), ref, 2, NULL);
-
+ PUSH_PARAM(getThis()); PUSH_PARAM(ref); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
zim_MongoDBRef_get(2, return_value, return_value_ptr, NULL, return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
}
PHP_METHOD(MongoDB, execute) {
@@ -428,11 +432,11 @@
MAKE_STD_ZVAL(obj);
object_init_ex(obj, mongo_ce_Code);
- zend_ptr_stack_n_push(&EG(argument_stack), 3, code, 1, NULL);
+ PUSH_PARAM(code); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCode___construct(1, return_value, return_value_ptr, obj, \
return_value_used TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
code = obj;
}
@@ -447,12 +451,12 @@
add_assoc_zval(zdata, "args", args);
zval *zname = zend_read_property(mongo_ce_Mongo, getThis(), "name", \
strlen("name"), NOISY TSRMLS_CC);
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, zdata, zname, 3, NULL);
+ PUSH_PARAM(zlink); PUSH_PARAM(zdata); PUSH_PARAM(zname); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, return_value, return_value_ptr, NULL, return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&zdata);
zval_ptr_dtor(&args);
http://cvs.php.net/viewvc.cgi/pecl/mongo/gridfs.c?r1=1.1&r2=1.2&diff_format=u
Index: pecl/mongo/gridfs.c
diff -u pecl/mongo/gridfs.c:1.1 pecl/mongo/gridfs.c:1.2
--- pecl/mongo/gridfs.c:1.1 Tue May 19 14:06:54 2009
+++ pecl/mongo/gridfs.c Wed May 20 20:23:33 2009
@@ -38,7 +38,6 @@
*mongo_ce_GridFSCursor = NULL;
PHP_METHOD(MongoGridFS, __construct) {
- void *holder;
zval *zdb;
char *files = 0, *chunks = 0;
int files_len = 0, chunks_len = 0;
@@ -65,9 +64,11 @@
MAKE_STD_ZVAL(zfile);
ZVAL_STRING(zfile, files, 1);
- zend_ptr_stack_n_push(&EG(argument_stack), 4, zdb, zfile, 2, NULL);
+ PUSH_PARAM(zdb); PUSH_PARAM(zfile); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
zim_MongoCollection___construct(2, return_value, return_value_ptr, getThis(), \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
zval *zchunks;
MAKE_STD_ZVAL(zchunks);
@@ -77,9 +78,11 @@
MAKE_STD_ZVAL(zchunk);
ZVAL_STRING(zchunk, chunks, 1);
- zend_ptr_stack_n_push(&EG(argument_stack), 4, zdb, zchunk, 2, NULL);
+ PUSH_PARAM(zdb); PUSH_PARAM(zchunk); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
zim_MongoCollection___construct(2, return_value, return_value_ptr, zchunks, \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
zend_update_property(mongo_ce_GridFS, getThis(), "chunks", strlen("chunks"), \
zchunks TSRMLS_CC);
@@ -88,9 +91,11 @@
MAKE_STD_ZVAL(zidx);
ZVAL_STRING(zidx, "n", 1);
- zend_ptr_stack_n_push(&EG(argument_stack), 3, zidx, 1, NULL);
+ PUSH_PARAM(zidx); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCollection_ensureIndex(1, return_value, return_value_ptr, zchunks, \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&zfile);
zval_ptr_dtor(&zchunk);
@@ -110,11 +115,11 @@
zval *zchunks = zend_read_property(mongo_ce_GridFS, getThis(), "chunks", \
strlen("chunks"), NOISY TSRMLS_CC); zval *zdb = zend_read_property(mongo_ce_GridFS, \
getThis(), "db", strlen("db"), NOISY TSRMLS_CC);
- zend_ptr_stack_n_push(&EG(argument_stack), 3, zchunks, 1, NULL);
+ PUSH_PARAM(zchunks); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoDB_dropCollection(1, return_value, return_value_ptr, zdb, \
return_value_used TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zim_MongoCollection_drop(0, return_value, return_value_ptr, getThis(), \
return_value_used TSRMLS_CC); }
@@ -126,8 +131,6 @@
return;
}
- object_init_ex(return_value, mongo_ce_GridFSCursor);
-
zval *zdb = zend_read_property(mongo_ce_GridFS, getThis(), "db", strlen("db"), \
NOISY TSRMLS_CC); zval *zlink = zend_read_property(mongo_ce_DB, zdb, "connection", \
strlen("connection"), NOISY TSRMLS_CC); zval *zns = \
zend_read_property(mongo_ce_GridFS, getThis(), "ns", strlen("ns"), NOISY TSRMLS_CC); \
@@ -148,13 +151,14 @@ zval_add_ref(&zquery);
}
- zend_ptr_stack_n_push(&EG(argument_stack), 7, getThis(), zlink, zns, zquery, \
zfields, 5, NULL);
-
zval temp;
- zim_MongoGridFSCursor___construct(5, &temp, NULL, return_value, return_value_used \
TSRMLS_CC); + object_init_ex(return_value, mongo_ce_GridFSCursor);
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 7, &holder, &holder, &holder, &holder, \
&holder, &holder, &holder); + PUSH_PARAM(getThis()); PUSH_PARAM(zlink); \
PUSH_PARAM(zns); PUSH_PARAM(zquery); PUSH_PARAM(zfields); PUSH_PARAM((void*)5); + \
PUSH_EO_PARAM(); + zim_MongoGridFSCursor___construct(5, &temp, NULL, return_value, \
return_value_used TSRMLS_CC); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&zquery);
zval_ptr_dtor(&zfields);
@@ -210,7 +214,6 @@
// insert chunks
zval *chunks = zend_read_property(mongo_ce_GridFS, getThis(), "chunks", \
strlen("chunks"), NOISY TSRMLS_CC);
- void *holder;
while (pos < size) {
chunk_size = size-pos >= MonGlo(chunk_size) ? MonGlo(chunk_size) : size-pos;
char *buf = (char*)emalloc(chunk_size);
@@ -232,9 +235,12 @@
add_assoc_stringl(zchunk, "data", buf, chunk_size, DUP);
// insert chunk
- zend_ptr_stack_n_push(&EG(argument_stack), 3, zchunk, 1, NULL);
+
+ PUSH_PARAM(zchunk); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCollection_insert(1, return_value, return_value_ptr, chunks, \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
// increment counters
pos += chunk_size;
@@ -282,9 +288,11 @@
*/
// insert file
- zend_ptr_stack_n_push(&EG(argument_stack), 3, zfile, 1, NULL);
+ PUSH_PARAM(zfile); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCollection_insert(1, return_value, return_value_ptr, getThis(), \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
// zval_ptr_dtor(&hash);
// free_cursor(cursor);
@@ -321,10 +329,11 @@
zval *file;
MAKE_STD_ZVAL(file);
- void *holder;
- zend_ptr_stack_n_push(&EG(argument_stack), 3, zquery, 1, NULL);
+ PUSH_PARAM(zquery); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCollection_findOne(1, file, &file, getThis(), return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
if (Z_TYPE_P(file) == IS_NULL) {
RETVAL_ZVAL(file, 0, 1);
@@ -333,9 +342,11 @@
object_init_ex(return_value, mongo_ce_GridFSFile);
zval temp;
- zend_ptr_stack_n_push(&EG(argument_stack), 4, getThis(), file, 2, NULL);
+ PUSH_PARAM(getThis()); PUSH_PARAM(file); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
zim_MongoGridFSFile___construct(2, &temp, NULL, return_value, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
}
zval_ptr_dtor(&file);
@@ -367,10 +378,11 @@
zval *zcursor;
MAKE_STD_ZVAL(zcursor);
- void *holder;
- zend_ptr_stack_n_push(&EG(argument_stack), 4, criteria, zfields, 2, NULL);
+ PUSH_PARAM(criteria); PUSH_PARAM(zfields); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
zim_MongoCollection_find(2, zcursor, &zcursor, getThis(), return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&zfields);
@@ -393,10 +405,12 @@
zval_add_ref(id);
add_assoc_zval(temp, "files_id", *id);
-
- zend_ptr_stack_n_push(&EG(argument_stack), 3, temp, 1, NULL);
+
+ PUSH_PARAM(temp); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCollection_remove(1, return_value, return_value_ptr, chunks, \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&temp);
zval_ptr_dtor(&next);
@@ -410,9 +424,11 @@
Z_TYPE(zjust_one) = IS_BOOL;
zjust_one.value.lval = just_one;
- zend_ptr_stack_n_push(&EG(argument_stack), 4, criteria, &zjust_one, 2, NULL);
+ PUSH_PARAM(criteria); PUSH_PARAM(&zjust_one); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
zim_MongoCollection_remove(2, return_value, return_value_ptr, getThis(), \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&criteria);
}
@@ -452,10 +468,11 @@
array_init(extra);
add_assoc_string(extra, "filename", new_name, 1);
- void *holder;
- zend_ptr_stack_n_push(&EG(argument_stack), 4, *temp, extra, 2, NULL);
+ PUSH_PARAM(*temp); PUSH_PARAM(extra); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
zim_MongoGridFS_storeFile(2, return_value, return_value_ptr, getThis(), \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&extra);
}
@@ -527,10 +544,11 @@
array_init(n);
add_assoc_long(n, "n", 1);
- void *holder;
- zend_ptr_stack_n_push(&EG(argument_stack), 3, n, 1, NULL);
+ PUSH_PARAM(n); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCollection_ensureIndex(1, return_value, return_value_ptr, chunks, \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&n);
@@ -563,18 +581,22 @@
zval *cursor;
MAKE_STD_ZVAL(cursor);
- zend_ptr_stack_n_push(&EG(argument_stack), 3, query, 1, NULL);
+ PUSH_PARAM(query); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCollection_find(1, cursor, &cursor, chunks, return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval *sort;
MAKE_STD_ZVAL(sort);
array_init(sort);
add_assoc_long(sort, "n", 1);
- zend_ptr_stack_n_push(&EG(argument_stack), 3, sort, 1, NULL);
+ PUSH_PARAM(sort); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCursor_sort(1, cursor, &cursor, cursor, return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval *next;
MAKE_STD_ZVAL(next);
@@ -619,8 +641,6 @@
}
PHP_METHOD(MongoGridFSFile, getBytes) {
- void *holder;
-
zval *file = zend_read_property(mongo_ce_GridFSFile, getThis(), "file", \
strlen("file"), NOISY TSRMLS_CC); zval **id;
zend_hash_find(Z_ARRVAL_P(file), "filename", strlen("filename")+1, (void**)&id);
@@ -640,9 +660,11 @@
array_init(n);
add_assoc_long(n, "n", 1);
- zend_ptr_stack_n_push(&EG(argument_stack), 3, n, 1, NULL);
+ PUSH_PARAM(n); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCollection_ensureIndex(1, return_value, return_value_ptr, chunks, \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&n);
@@ -656,18 +678,22 @@
zval *cursor;
MAKE_STD_ZVAL(cursor);
- zend_ptr_stack_n_push(&EG(argument_stack), 3, query, 1, NULL);
+ PUSH_PARAM(query); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCollection_find(1, cursor, &cursor, chunks, return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval *sort;
MAKE_STD_ZVAL(sort);
array_init(sort);
add_assoc_long(sort, "n", 1);
- zend_ptr_stack_n_push(&EG(argument_stack), 3, sort, 1, NULL);
+ PUSH_PARAM(sort); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCursor_sort(1, cursor, &cursor, cursor, return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
char *str = (char*)emalloc(Z_LVAL_PP(size));
char *str_ptr = str;
@@ -722,7 +748,6 @@
PHP_METHOD(MongoGridFSCursor, __construct) {
- void *holder;
zval *gridfs = 0, *connection = 0, *ns = 0, *query = 0, *fields = 0;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "Ozzzz", &gridfs, \
mongo_ce_GridFS, &connection, &ns, &query, &fields) == FAILURE) { @@ -731,9 +756,11 \
@@
zend_update_property(mongo_ce_GridFSCursor, getThis(), "gridfs", strlen("gridfs"), \
gridfs TSRMLS_CC);
- zend_ptr_stack_n_push(&EG(argument_stack), 6, connection, ns, query, fields, 4, \
NULL); + PUSH_PARAM(connection); PUSH_PARAM(ns); PUSH_PARAM(query); \
PUSH_PARAM(fields); PUSH_PARAM((void*)4); + PUSH_EO_PARAM();
zim_MongoCursor___construct(4, NULL, NULL, getThis(), return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 6, &holder, &holder, &holder, &holder, \
&holder, &holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
}
PHP_METHOD(MongoGridFSCursor, getNext) {
@@ -751,12 +778,13 @@
object_init_ex(return_value, mongo_ce_GridFSFile);
zval temp;
- void *holder;
zval *gridfs = zend_read_property(mongo_ce_GridFSCursor, getThis(), "gridfs", \
strlen("gridfs"), NOISY TSRMLS_CC);
- zend_ptr_stack_n_push(&EG(argument_stack), 4, gridfs, cursor->current, 2, NULL);
+ PUSH_PARAM(gridfs); PUSH_PARAM(cursor->current); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
zim_MongoGridFSFile___construct(2, &temp, NULL, return_value, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
}
PHP_METHOD(MongoGridFSCursor, key) {
http://cvs.php.net/viewvc.cgi/pecl/mongo/mongo.c?r1=1.3&r2=1.4&diff_format=u
Index: pecl/mongo/mongo.c
diff -u pecl/mongo/mongo.c:1.3 pecl/mongo/mongo.c:1.4
--- pecl/mongo/mongo.c:1.3 Tue May 19 14:06:54 2009
+++ pecl/mongo/mongo.c Wed May 20 20:23:33 2009
@@ -363,11 +363,11 @@
ZVAL_STRING(&zusername, "", 0);
ZVAL_STRING(&zpassword, "", 0);
- zend_ptr_stack_n_push(&EG(argument_stack), 4, &zusername, &zpassword, 2, NULL);
- zim_Mongo_connectUtil(2, return_value, &return_value, getThis(), return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
+ PUSH_PARAM(&zusername); PUSH_PARAM(&zpassword); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
+ zim_Mongo_connectUtil(2, return_value, return_value_ptr, getThis(), \
return_value_used TSRMLS_CC); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
}
/* {{{ Mongo->pairConnect
@@ -380,11 +380,11 @@
ZVAL_STRING(&zusername, "", 0);
ZVAL_STRING(&zpassword, "", 0);
- zend_ptr_stack_n_push(&EG(argument_stack), 4, &zusername, &zpassword, 2, NULL);
- zim_Mongo_connectUtil(2, return_value, &return_value, getThis(), return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
+ PUSH_PARAM(&zusername); PUSH_PARAM(&zpassword); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
+ zim_Mongo_connectUtil(2, return_value, return_value_ptr, getThis(), \
return_value_used TSRMLS_CC); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
}
/* {{{ Mongo->persistConnect
@@ -397,11 +397,11 @@
return;
}
- zend_ptr_stack_n_push(&EG(argument_stack), 4, &zusername, &zpassword, 2, NULL);
- zim_Mongo_connectUtil(2, return_value, &return_value, getThis(), return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
+ PUSH_PARAM(&zusername); PUSH_PARAM(&zpassword); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
+ zim_Mongo_connectUtil(2, return_value, return_value_ptr, getThis(), \
return_value_used TSRMLS_CC); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
}
/* {{{ Mongo->pairPersistConnect
@@ -415,11 +415,11 @@
return;
}
- zend_ptr_stack_n_push(&EG(argument_stack), 4, &zusername, &zpassword, 2, NULL);
- zim_Mongo_connectUtil(2, return_value, &return_value, getThis(), return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
+ PUSH_PARAM(&zusername); PUSH_PARAM(&zpassword); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
+ zim_Mongo_connectUtil(2, return_value, return_value_ptr, getThis(), \
return_value_used TSRMLS_CC); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
}
@@ -647,11 +647,12 @@
MAKE_STD_ZVAL(obj);
object_init_ex(obj, mongo_ce_DB);
- zend_ptr_stack_n_push(&EG(argument_stack), 4, getThis(), db, 2, NULL);
- zim_MongoDB___construct(2, return_value, &return_value, obj, return_value_used \
TSRMLS_CC); + PUSH_PARAM(getThis()); PUSH_PARAM(db); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
+ zim_MongoDB___construct(2, return_value, return_value_ptr, obj, return_value_used \
TSRMLS_CC); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 4, &holder, &holder, &holder, &holder);
RETURN_ZVAL(obj, 0, 1);
}
/* }}} */
@@ -676,11 +677,11 @@
zval_add_ref(&db);
}
- zend_ptr_stack_n_push(&EG(argument_stack), 3, collection, 1, NULL);
+ PUSH_PARAM(collection); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoDB_selectCollection(1, return_value, return_value_ptr, db, \
return_value_used TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&db);
}
@@ -737,12 +738,11 @@
zval_add_ref(&backup);
}
- int param_num = 2;
- void *holder;
-
- zend_ptr_stack_n_push(&EG(argument_stack), param_num+2, preserve_clones, backup, \
param_num, NULL);
- zim_MongoDB_repair(param_num, return_value, return_value_ptr, db, 0 TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), param_num+2, &holder, &holder, &holder, \
&holder); + PUSH_PARAM(preserve_clones); PUSH_PARAM(backup); PUSH_PARAM((void*)2);
+ PUSH_EO_PARAM();
+ zim_MongoDB_selectCollection(1, return_value, return_value_ptr, db, \
return_value_used TSRMLS_CC); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&backup);
zval_ptr_dtor(&preserve_clones);
@@ -763,12 +763,11 @@
MAKE_STD_ZVAL(name);
ZVAL_STRING(name, "admin", 1);
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, data, name, 3, NULL);
-
+ PUSH_PARAM(zlink); PUSH_PARAM(data); PUSH_PARAM(name); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, return_value, return_value_ptr, NULL, return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&name);
zval_ptr_dtor(&data);
@@ -789,12 +788,11 @@
MAKE_STD_ZVAL(name);
ZVAL_STRING(name, "admin", 1);
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, data, name, 3, NULL);
-
+ PUSH_PARAM(zlink); PUSH_PARAM(data); PUSH_PARAM(name); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, return_value, return_value_ptr, NULL, return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&name);
zval_ptr_dtor(&data);
@@ -815,12 +813,11 @@
MAKE_STD_ZVAL(name);
ZVAL_STRING(name, "admin", 1);
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, data, name, 3, NULL);
-
+ PUSH_PARAM(zlink); PUSH_PARAM(data); PUSH_PARAM(name); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, return_value, return_value_ptr, NULL, return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&name);
zval_ptr_dtor(&data);
@@ -843,12 +840,11 @@
MAKE_STD_ZVAL(name);
ZVAL_STRING(name, "admin", 1);
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, data, name, 3, NULL);
-
+ PUSH_PARAM(zlink); PUSH_PARAM(data); PUSH_PARAM(name); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoUtil_dbCommand(3, return_value, return_value_ptr, NULL, return_value_used \
TSRMLS_CC);
-
- void *holder;
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&name);
zval_ptr_dtor(&data);
http://cvs.php.net/viewvc.cgi/pecl/mongo/mongo.h?r1=1.5&r2=1.6&diff_format=u
Index: pecl/mongo/mongo.h
diff -u pecl/mongo/mongo.h:1.5 pecl/mongo/mongo.h:1.6
--- pecl/mongo/mongo.h:1.5 Tue May 19 14:06:54 2009
+++ pecl/mongo/mongo.h Wed May 20 20:23:33 2009
@@ -87,6 +87,18 @@
APPEND_HEADER(buf); \
serialize_string(&buf, ns, ns_len);
+#if ZEND_MODULE_API_NO >= 20090115
+# define PUSH_PARAM(arg) zend_vm_stack_push(arg TSRMLS_CC)
+# define POP_PARAM() zend_vm_stack_pop(TSRMLS_C)
+# define PUSH_EO_PARAM()
+# define POP_EO_PARAM()
+#else
+# define PUSH_PARAM(arg) zend_ptr_stack_push(&EG(argument_stack), arg)
+# define POP_PARAM() zend_ptr_stack_pop(&EG(argument_stack))
+# define PUSH_EO_PARAM() zend_ptr_stack_push(&EG(argument_stack), NULL)
+# define POP_EO_PARAM() zend_ptr_stack_pop(&EG(argument_stack))
+#endif
+
typedef struct {
int ts;
int paired;
http://cvs.php.net/viewvc.cgi/pecl/mongo/mongo_types.c?r1=1.3&r2=1.4&diff_format=u
Index: pecl/mongo/mongo_types.c
diff -u pecl/mongo/mongo_types.c:1.3 pecl/mongo/mongo_types.c:1.4
--- pecl/mongo/mongo_types.c:1.3 Tue May 19 14:06:54 2009
+++ pecl/mongo/mongo_types.c Wed May 20 20:23:33 2009
@@ -94,7 +94,7 @@
/* {{{ MongoId::__construct()
*/
PHP_METHOD(MongoId, __construct) {
- zval *id;
+ zval *id = 0;
char holder[12];
char *data = holder;
@@ -102,7 +102,8 @@
return;
}
- if (Z_TYPE_P(id) == IS_STRING &&
+ if (id &&
+ Z_TYPE_P(id) == IS_STRING &&
Z_STRLEN_P(id) == 24) {
int i;
for(i=0;i<12;i++) {
@@ -118,7 +119,8 @@
data[i] = digit1*16+digit2;
}
}
- else if (Z_TYPE_P(id) == IS_OBJECT &&
+ else if (id &&
+ Z_TYPE_P(id) == IS_OBJECT &&
Z_OBJCE_P(id) == mongo_ce_Id) {
zval *zid = zend_read_property(mongo_ce_Id, id, "id", strlen("id"), NOISY \
TSRMLS_CC); data = (char*)Z_STRVAL_P(zid);
@@ -466,19 +468,22 @@
zval *collection;
MAKE_STD_ZVAL(collection);
- void *holder;
- zend_ptr_stack_n_push(&EG(argument_stack), 3, *ns, 1, NULL);
+ PUSH_PARAM(*ns); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoDB_selectCollection(1, collection, &collection, db, return_value_used \
TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval *query;
MAKE_STD_ZVAL(query);
array_init(query);
add_assoc_zval(query, "_id", *id);
- zend_ptr_stack_n_push(&EG(argument_stack), 3, query, 1, NULL);
+ PUSH_PARAM(query); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCollection_findOne(1, return_value, return_value_ptr, collection, \
return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
zval_ptr_dtor(&collection);
zval_ptr_dtor(&query);
http://cvs.php.net/viewvc.cgi/pecl/mongo/package.xml?r1=1.8&r2=1.9&diff_format=u
Index: pecl/mongo/package.xml
diff -u pecl/mongo/package.xml:1.8 pecl/mongo/package.xml:1.9
--- pecl/mongo/package.xml:1.8 Tue May 19 14:06:54 2009
+++ pecl/mongo/package.xml Wed May 20 20:23:33 2009
@@ -26,6 +26,7 @@
<license uri="http://www.apache.org/licenses/LICENSE-2.0">Apache License</license>
<notes>
Added classes
+ 5.3 compatible
</notes>
<contents>
<dir baseinstalldir="/" name="/">
@@ -73,6 +74,7 @@
<date>2009-05-19</date>
<notes>
Added classes
+ 5.3 compatible
</notes>
</release>
<release>
http://cvs.php.net/viewvc.cgi/pecl/mongo/util.c?r1=1.1&r2=1.2&diff_format=u
Index: pecl/mongo/util.c
diff -u pecl/mongo/util.c:1.1 pecl/mongo/util.c:1.2
--- pecl/mongo/util.c:1.1 Tue May 19 14:06:54 2009
+++ pecl/mongo/util.c Wed May 20 20:23:33 2009
@@ -189,24 +189,28 @@
object_init_ex(cursor, mongo_ce_Cursor);
zval temp;
- void *holder;
- zend_ptr_stack_n_push(&EG(argument_stack), 5, zlink, &ns, zdata, 3, 0);
+ PUSH_PARAM(zlink); PUSH_PARAM(&ns); PUSH_PARAM(zdata); PUSH_PARAM((void*)3);
+ PUSH_EO_PARAM();
zim_MongoCursor___construct(3, &temp, 0, cursor, return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 5, &holder, &holder, &holder, &holder, \
&holder); + POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM(); POP_PARAM(); POP_PARAM();
// limit
zval limit;
Z_TYPE(limit) = IS_LONG;
Z_LVAL(limit) = 1;
- zend_ptr_stack_n_push(&EG(argument_stack), 3, &limit, 1, 0);
+ PUSH_PARAM(&limit); PUSH_PARAM((void*)1);
+ PUSH_EO_PARAM();
zim_MongoCursor_limit(1, cursor, &cursor, cursor, return_value_used TSRMLS_CC);
- zend_ptr_stack_n_pop(&EG(argument_stack), 3, &holder, &holder, &holder);
+ POP_EO_PARAM();
+ POP_PARAM(); POP_PARAM();
// query
zim_MongoCursor_getNext(0, return_value, return_value_ptr, cursor, \
return_value_used TSRMLS_CC);
zval_ptr_dtor(&cursor);
+ efree(cmd_ns);
}
--
PECL CVS Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic