mirror of
https://github.com/php/php-src.git
synced 2025-08-15 21:48:51 +02:00
Use zend_string for DBA exist handler
This commit is contained in:
parent
0eb0f64455
commit
cd98e46583
15 changed files with 29 additions and 28 deletions
|
@ -912,7 +912,7 @@ PHP_FUNCTION(dba_exists)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
RETVAL_BOOL(info->hnd->exists(info, ZSTR_VAL(key_str), ZSTR_LEN(key_str)) == SUCCESS);
|
RETVAL_BOOL(info->hnd->exists(info, key_str) == SUCCESS);
|
||||||
DBA_RELEASE_HT_KEY_CREATION();
|
DBA_RELEASE_HT_KEY_CREATION();
|
||||||
}
|
}
|
||||||
/* }}} */
|
/* }}} */
|
||||||
|
|
|
@ -194,7 +194,7 @@ DBA_EXISTS_FUNC(cdb)
|
||||||
if (cdb->make)
|
if (cdb->make)
|
||||||
return FAILURE; /* database was opened writeonly */
|
return FAILURE; /* database was opened writeonly */
|
||||||
#endif
|
#endif
|
||||||
if (php_cdb_find(&cdb->c, key, keylen) == 1)
|
if (php_cdb_find(&cdb->c, ZSTR_VAL(key), ZSTR_LEN(key)) == 1)
|
||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
return FAILURE;
|
return FAILURE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -119,8 +119,8 @@ DBA_EXISTS_FUNC(db1)
|
||||||
DBT gval;
|
DBT gval;
|
||||||
DBT gkey;
|
DBT gkey;
|
||||||
|
|
||||||
gkey.data = (char *) key;
|
gkey.data = ZSTR_VAL(key);
|
||||||
gkey.size = keylen;
|
gkey.size = ZSTR_LEN(key);
|
||||||
|
|
||||||
return dba->dbp->get(dba->dbp, &gkey, &gval, 0) != RET_SUCCESS ? FAILURE : SUCCESS;
|
return dba->dbp->get(dba->dbp, &gkey, &gval, 0) != RET_SUCCESS ? FAILURE : SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
|
@ -122,8 +122,8 @@ DBA_EXISTS_FUNC(db2)
|
||||||
DBT gval = {0};
|
DBT gval = {0};
|
||||||
DBT gkey = {0};
|
DBT gkey = {0};
|
||||||
|
|
||||||
gkey.data = (char *) key;
|
gkey.data = ZSTR_VAL(key);
|
||||||
gkey.size = keylen;
|
gkey.size = ZSTR_LEN(key);
|
||||||
|
|
||||||
if (dba->dbp->get(dba->dbp, NULL, &gkey, &gval, 0)) {
|
if (dba->dbp->get(dba->dbp, NULL, &gkey, &gval, 0)) {
|
||||||
return FAILURE;
|
return FAILURE;
|
||||||
|
|
|
@ -158,7 +158,8 @@ DBA_EXISTS_FUNC(db3)
|
||||||
DBT gkey;
|
DBT gkey;
|
||||||
|
|
||||||
memset(&gkey, 0, sizeof(gkey));
|
memset(&gkey, 0, sizeof(gkey));
|
||||||
gkey.data = (char *) key; gkey.size = keylen;
|
gkey.data = ZSTR_VAL(key);
|
||||||
|
gkey.size = ZSTR_LEN(key);
|
||||||
|
|
||||||
memset(&gval, 0, sizeof(gval));
|
memset(&gval, 0, sizeof(gval));
|
||||||
if (!dba->dbp->get(dba->dbp, NULL, &gkey, &gval, 0)) {
|
if (!dba->dbp->get(dba->dbp, NULL, &gkey, &gval, 0)) {
|
||||||
|
|
|
@ -194,8 +194,8 @@ DBA_EXISTS_FUNC(db4)
|
||||||
DBT gkey;
|
DBT gkey;
|
||||||
|
|
||||||
memset(&gkey, 0, sizeof(gkey));
|
memset(&gkey, 0, sizeof(gkey));
|
||||||
gkey.data = (char *) key;
|
gkey.data = ZSTR_VAL(key);
|
||||||
gkey.size = keylen;
|
gkey.size = ZSTR_LEN(key);
|
||||||
|
|
||||||
memset(&gval, 0, sizeof(gval));
|
memset(&gval, 0, sizeof(gval));
|
||||||
|
|
||||||
|
|
|
@ -122,8 +122,8 @@ DBA_EXISTS_FUNC(dbm)
|
||||||
datum gval;
|
datum gval;
|
||||||
datum gkey;
|
datum gkey;
|
||||||
|
|
||||||
gkey.dptr = (char *) key;
|
gkey.dptr = ZSTR_VAL(key);
|
||||||
gkey.dsize = keylen;
|
gkey.dsize = ZSTR_LEN(key);
|
||||||
|
|
||||||
gval = fetch(gkey);
|
gval = fetch(gkey);
|
||||||
if (gval.dptr) {
|
if (gval.dptr) {
|
||||||
|
|
|
@ -103,8 +103,8 @@ DBA_EXISTS_FUNC(flatfile)
|
||||||
datum gval;
|
datum gval;
|
||||||
datum gkey;
|
datum gkey;
|
||||||
|
|
||||||
gkey.dptr = (char *) key;
|
gkey.dptr = ZSTR_VAL(key);
|
||||||
gkey.dsize = keylen;
|
gkey.dsize = ZSTR_LEN(key);
|
||||||
gval = flatfile_fetch(dba, gkey);
|
gval = flatfile_fetch(dba, gkey);
|
||||||
if (gval.dptr) {
|
if (gval.dptr) {
|
||||||
efree(gval.dptr);
|
efree(gval.dptr);
|
||||||
|
|
|
@ -117,8 +117,8 @@ DBA_EXISTS_FUNC(gdbm)
|
||||||
dba_gdbm_data *dba = info->dbf;
|
dba_gdbm_data *dba = info->dbf;
|
||||||
datum gkey;
|
datum gkey;
|
||||||
|
|
||||||
gkey.dptr = (char *) key;
|
gkey.dptr = ZSTR_VAL(key);
|
||||||
gkey.dsize = keylen;
|
gkey.dsize = ZSTR_LEN(key);
|
||||||
|
|
||||||
return gdbm_exists(dba->dbf, gkey) ? SUCCESS : FAILURE;
|
return gdbm_exists(dba->dbf, gkey) ? SUCCESS : FAILURE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -112,7 +112,7 @@ DBA_EXISTS_FUNC(inifile)
|
||||||
php_error_docref(NULL, E_WARNING, "No key specified");
|
php_error_docref(NULL, E_WARNING, "No key specified");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
ini_key = inifile_key_split((char*)key); /* keylen not needed here */
|
ini_key = inifile_key_split(ZSTR_VAL(key)); /* keylen not needed here */
|
||||||
|
|
||||||
ini_val = inifile_fetch(dba, &ini_key, 0);
|
ini_val = inifile_fetch(dba, &ini_key, 0);
|
||||||
inifile_key_free(&ini_key);
|
inifile_key_free(&ini_key);
|
||||||
|
|
|
@ -191,17 +191,17 @@ DBA_EXISTS_FUNC(lmdb)
|
||||||
rc = mdb_txn_begin(LMDB_IT(env), NULL, MDB_RDONLY, &LMDB_IT(txn));
|
rc = mdb_txn_begin(LMDB_IT(env), NULL, MDB_RDONLY, &LMDB_IT(txn));
|
||||||
}
|
}
|
||||||
if (rc) {
|
if (rc) {
|
||||||
php_error_docref1(NULL, key, E_WARNING, "%s", mdb_strerror(rc));
|
php_error_docref(NULL, E_WARNING, "%s", mdb_strerror(rc));
|
||||||
return FAILURE;
|
return FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
k.mv_size = keylen;
|
k.mv_size = ZSTR_LEN(key);
|
||||||
k.mv_data = key;
|
k.mv_data = ZSTR_VAL(key);
|
||||||
|
|
||||||
rc = mdb_get(LMDB_IT(txn), LMDB_IT(dbi), &k, &v);
|
rc = mdb_get(LMDB_IT(txn), LMDB_IT(dbi), &k, &v);
|
||||||
if (rc) {
|
if (rc) {
|
||||||
if (MDB_NOTFOUND != rc) {
|
if (MDB_NOTFOUND != rc) {
|
||||||
php_error_docref1(NULL, key, E_WARNING, "%s", mdb_strerror(rc));
|
php_error_docref(NULL, E_WARNING, "%s", mdb_strerror(rc));
|
||||||
}
|
}
|
||||||
mdb_txn_abort(LMDB_IT(txn));
|
mdb_txn_abort(LMDB_IT(txn));
|
||||||
return FAILURE;
|
return FAILURE;
|
||||||
|
|
|
@ -97,8 +97,8 @@ DBA_EXISTS_FUNC(ndbm)
|
||||||
datum gval;
|
datum gval;
|
||||||
datum gkey;
|
datum gkey;
|
||||||
|
|
||||||
gkey.dptr = (char *) key;
|
gkey.dptr = ZSTR_VAL(key);
|
||||||
gkey.dsize = keylen;
|
gkey.dsize = ZSTR_LEN(key);
|
||||||
gval = dbm_fetch(info->dbf, gkey);
|
gval = dbm_fetch(info->dbf, gkey);
|
||||||
if (gval.dptr) {
|
if (gval.dptr) {
|
||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
|
|
|
@ -107,7 +107,7 @@ DBA_EXISTS_FUNC(qdbm)
|
||||||
dba_qdbm_data *dba = info->dbf;
|
dba_qdbm_data *dba = info->dbf;
|
||||||
char *value;
|
char *value;
|
||||||
|
|
||||||
value = dpget(dba->dbf, key, keylen, 0, -1, NULL);
|
value = dpget(dba->dbf, ZSTR_VAL(key), ZSTR_LEN(key), 0, -1, NULL);
|
||||||
if (value) {
|
if (value) {
|
||||||
free(value);
|
free(value);
|
||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
|
|
|
@ -125,7 +125,7 @@ DBA_EXISTS_FUNC(tcadb)
|
||||||
char *value;
|
char *value;
|
||||||
int value_len;
|
int value_len;
|
||||||
|
|
||||||
value = tcadbget(dba->tcadb, key, keylen, &value_len);
|
value = tcadbget(dba->tcadb, ZSTR_VAL(key), ZSTR_LEN(key), &value_len);
|
||||||
if (value) {
|
if (value) {
|
||||||
tcfree(value);
|
tcfree(value);
|
||||||
return SUCCESS;
|
return SUCCESS;
|
||||||
|
|
|
@ -75,7 +75,7 @@ typedef struct dba_handler {
|
||||||
void (*close)(dba_info *);
|
void (*close)(dba_info *);
|
||||||
zend_string* (*fetch)(dba_info *, zend_string *, int);
|
zend_string* (*fetch)(dba_info *, zend_string *, int);
|
||||||
zend_result (*update)(dba_info *, zend_string *, zend_string *, int);
|
zend_result (*update)(dba_info *, zend_string *, zend_string *, int);
|
||||||
zend_result (*exists)(dba_info *, char *, size_t);
|
zend_result (*exists)(dba_info *, zend_string *);
|
||||||
zend_result (*delete)(dba_info *, char *, size_t);
|
zend_result (*delete)(dba_info *, char *, size_t);
|
||||||
char* (*firstkey)(dba_info *, size_t *);
|
char* (*firstkey)(dba_info *, size_t *);
|
||||||
char* (*nextkey)(dba_info *, size_t *);
|
char* (*nextkey)(dba_info *, size_t *);
|
||||||
|
@ -96,7 +96,7 @@ typedef struct dba_handler {
|
||||||
#define DBA_UPDATE_FUNC(x) \
|
#define DBA_UPDATE_FUNC(x) \
|
||||||
zend_result dba_update_##x(dba_info *info, zend_string *key, zend_string *val, int mode)
|
zend_result dba_update_##x(dba_info *info, zend_string *key, zend_string *val, int mode)
|
||||||
#define DBA_EXISTS_FUNC(x) \
|
#define DBA_EXISTS_FUNC(x) \
|
||||||
zend_result dba_exists_##x(dba_info *info, char *key, size_t keylen)
|
zend_result dba_exists_##x(dba_info *info, zend_string *key)
|
||||||
#define DBA_DELETE_FUNC(x) \
|
#define DBA_DELETE_FUNC(x) \
|
||||||
zend_result dba_delete_##x(dba_info *info, char *key, size_t keylen)
|
zend_result dba_delete_##x(dba_info *info, char *key, size_t keylen)
|
||||||
#define DBA_FIRSTKEY_FUNC(x) \
|
#define DBA_FIRSTKEY_FUNC(x) \
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue